]> git.ipfire.org Git - thirdparty/git.git/blob - Documentation/urls-remotes.txt
path.c: clarify trie_find()'s in-code comment
[thirdparty/git.git] / Documentation / urls-remotes.txt
1 include::urls.txt[]
2
3 REMOTES[[REMOTES]]
4 ------------------
5
6 The name of one of the following can be used instead
7 of a URL as `<repository>` argument:
8
9 * a remote in the Git configuration file: `$GIT_DIR/config`,
10 * a file in the `$GIT_DIR/remotes` directory, or
11 * a file in the `$GIT_DIR/branches` directory.
12
13 All of these also allow you to omit the refspec from the command line
14 because they each contain a refspec which git will use by default.
15
16 Named remote in configuration file
17 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18
19 You can choose to provide the name of a remote which you had previously
20 configured using linkgit:git-remote[1], linkgit:git-config[1]
21 or even by a manual edit to the `$GIT_DIR/config` file. The URL of
22 this remote will be used to access the repository. The refspec
23 of this remote will be used by default when you do
24 not provide a refspec on the command line. The entry in the
25 config file would appear like this:
26
27 ------------
28 [remote "<name>"]
29 url = <url>
30 pushurl = <pushurl>
31 push = <refspec>
32 fetch = <refspec>
33 ------------
34
35 The `<pushurl>` is used for pushes only. It is optional and defaults
36 to `<url>`.
37
38 Named file in `$GIT_DIR/remotes`
39 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
40
41 You can choose to provide the name of a
42 file in `$GIT_DIR/remotes`. The URL
43 in this file will be used to access the repository. The refspec
44 in this file will be used as default when you do not
45 provide a refspec on the command line. This file should have the
46 following format:
47
48 ------------
49 URL: one of the above URL format
50 Push: <refspec>
51 Pull: <refspec>
52
53 ------------
54
55 `Push:` lines are used by 'git push' and
56 `Pull:` lines are used by 'git pull' and 'git fetch'.
57 Multiple `Push:` and `Pull:` lines may
58 be specified for additional branch mappings.
59
60 Named file in `$GIT_DIR/branches`
61 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
62
63 You can choose to provide the name of a
64 file in `$GIT_DIR/branches`.
65 The URL in this file will be used to access the repository.
66 This file should have the following format:
67
68
69 ------------
70 <url>#<head>
71 ------------
72
73 `<url>` is required; `#<head>` is optional.
74
75 Depending on the operation, git will use one of the following
76 refspecs, if you don't provide one on the command line.
77 `<branch>` is the name of this file in `$GIT_DIR/branches` and
78 `<head>` defaults to `master`.
79
80 git fetch uses:
81
82 ------------
83 refs/heads/<head>:refs/heads/<branch>
84 ------------
85
86 git push uses:
87
88 ------------
89 HEAD:refs/heads/<head>
90 ------------
91
92
93
94