summaryrefslogtreecommitdiff
path: root/Documentation/urls-remotes.txt
blob: 504ae8a53bca42d7c9ec560b65ddfe14699387a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
include::urls.txt[]

REMOTES[[REMOTES]]
------------------

The name of one of the following can be used instead
of a URL as `<repository>` argument:

* a remote in the git configuration file: `$GIT_DIR/config`,
* a file in the `$GIT_DIR/remotes` directory, or
* a file in the `$GIT_DIR/branches` directory.

All of these also allow you to omit the refspec from the command line
because they each contain a refspec which git will use by default.

Named remote in configuration file
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can choose to provide the name of a remote which you had previously
configured using linkgit:git-remote[1], linkgit:git-config[1]
or even by a manual edit to the `$GIT_DIR/config` file.  The URL of
this remote will be used to access the repository.  The refspec
of this remote will be used by default when you do
not provide a refspec on the command line.  The entry in the
config file would appear like this:

------------
	[remote "<name>"]
		url = <url>
		push = <refspec>
		fetch = <refspec>
------------


Named file in `$GIT_DIR/remotes`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can choose to provide the name of a
file in `$GIT_DIR/remotes`.  The URL
in this file will be used to access the repository.  The refspec
in this file will be used as default when you do not
provide a refspec on the command line.  This file should have the
following format:

------------
	URL: one of the above URL format
	Push: <refspec>
	Pull: <refspec>

------------

`Push:` lines are used by 'git-push' and
`Pull:` lines are used by 'git-pull' and 'git-fetch'.
Multiple `Push:` and `Pull:` lines may
be specified for additional branch mappings.

Named file in `$GIT_DIR/branches`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can choose to provide the name of a
file in `$GIT_DIR/branches`.
The URL in this file will be used to access the repository.
This file should have the following format:


------------
	<url>#<head>
------------

`<url>` is required; `#<head>` is optional.
When you do not provide a refspec on the command line,
git will use the following refspec, where `<head>` defaults to `master`,
and `<repository>` is the name of this file
you provided in the command line.

------------
	refs/heads/<head>:<repository>
------------