Browse Source
Alter the description of <repository> in OPTIONS section to explicitly state that a 'remote name' is accepted. Rewrite REMOTES section to more directly identify the different kinds of remote-name permitted. Signed-off-by: John J. Franey <jjfraney@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
John J. Franey
17 years ago
committed by
Junio C Hamano
2 changed files with 63 additions and 34 deletions
@ -1,55 +1,82 @@
@@ -1,55 +1,82 @@
|
||||
include::urls.txt[] |
||||
|
||||
REMOTES |
||||
------- |
||||
REMOTES[[REMOTES]] |
||||
------------------ |
||||
|
||||
In addition to the above, as a short-hand, the name of a |
||||
file in `$GIT_DIR/remotes` directory can be given; the |
||||
named file should be in the following format: |
||||
The name of one of the following can be used instead |
||||
of a URL as `<repository>` argument: |
||||
|
||||
------------ |
||||
URL: one of the above URL format |
||||
Push: <refspec> |
||||
Pull: <refspec> |
||||
* 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. |
||||
|
||||
Then such a short-hand is specified in place of |
||||
<repository> without <refspec> parameters on the command |
||||
line, <refspec> specified on `Push:` lines or `Pull:` |
||||
lines are used for `git-push` and `git-fetch`/`git-pull`, |
||||
respectively. Multiple `Push:` and `Pull:` lines may |
||||
be specified for additional branch mappings. |
||||
Named remote in configuration file |
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
||||
|
||||
Or, equivalently, in the `$GIT_DIR/config` (note the use |
||||
of `fetch` instead of `Pull:`): |
||||
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 "<remote>"] |
||||
[remote "<name>"] |
||||
url = <url> |
||||
push = <refspec> |
||||
fetch = <refspec> |
||||
|
||||
------------ |
||||
|
||||
The name of a file in `$GIT_DIR/branches` directory can be |
||||
specified as an older notation short-hand; the named |
||||
file should contain a single line, a URL in one of the |
||||
above formats, optionally followed by a hash `#` and the |
||||
name of remote head (URL fragment notation). |
||||
`$GIT_DIR/branches/<remote>` file that stores a <url> |
||||
without the fragment is equivalent to have this in the |
||||
corresponding file in the `$GIT_DIR/remotes/` directory. |
||||
|
||||
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> |
||||
|
||||
------------ |
||||
URL: <url> |
||||
Pull: refs/heads/master:<remote> |
||||
|
||||
`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> |
||||
------------ |
||||
|
||||
while having `<url>#<head>` is equivalent to |
||||
`<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. |
||||
|
||||
------------ |
||||
URL: <url> |
||||
Pull: refs/heads/<head>:<remote> |
||||
refs/heads/<head>:<repository> |
||||
------------ |
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in new issue