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