blob: 26ecba53fbfad4af4da46680330f998bf92f1b3f [file] [log] [blame]
Junio C Hamano40f2f8d2006-02-07 08:04:391GIT URLS[[URLS]]
2----------------
3
4One of the following notations can be used
5to name the remote repository:
6
7===============================================================
8- rsync://host.xz/path/to/repo.git/
9- http://host.xz/path/to/repo.git/
10- https://host.xz/path/to/repo.git/
11- git://host.xz/path/to/repo.git/
12- git://host.xz/~user/path/to/repo.git/
Junio C Hamano7ccb9fd2006-07-15 01:38:4013- ssh://{startsb}user@{endsb}host.xz/path/to/repo.git/
14- ssh://{startsb}user@{endsb}host.xz/~user/path/to/repo.git/
15- ssh://{startsb}user@{endsb}host.xz/~/path/to/repo.git
Junio C Hamano40f2f8d2006-02-07 08:04:3916===============================================================
17
Junio C Hamano7ccb9fd2006-07-15 01:38:4018SSH is the default transport protocol. You can optionally specify
19which user to log-in as, and an alternate, scp-like syntax is also
20supported. Both syntaxes support username expansion,
Junio C Hamano40f2f8d2006-02-07 08:04:3921as does the native git protocol. The following three are
22identical to the last three above, respectively:
23
24===============================================================
Junio C Hamano7ccb9fd2006-07-15 01:38:4025- {startsb}user@{endsb}host.xz:/path/to/repo.git/
26- {startsb}user@{endsb}host.xz:~user/path/to/repo.git/
27- {startsb}user@{endsb}host.xz:path/to/repo.git
Junio C Hamano40f2f8d2006-02-07 08:04:3928===============================================================
29
30To sync with a local directory, use:
31
32===============================================================
33- /path/to/repo.git/
34===============================================================
35
36REMOTES
37-------
38
39In addition to the above, as a short-hand, the name of a
40file in `$GIT_DIR/remotes` directory can be given; the
41named file should be in the following format:
42
43URL: one of the above URL format
44Push: <refspec>
45Pull: <refspec>
46
47Then such a short-hand is specified in place of
48<repository> without <refspec> parameters on the command
49line, <refspec> specified on `Push:` lines or `Pull:`
50lines are used for `git-push` and `git-fetch`/`git-pull`,
Junio C Hamano51c2ab02006-07-09 20:38:5451respectively. Multiple `Push:` and `Pull:` lines may
Junio C Hamano40f2f8d2006-02-07 08:04:3952be specified for additional branch mappings.
53
54The name of a file in `$GIT_DIR/branches` directory can be
55specified as an older notation short-hand; the named
56file should contain a single line, a URL in one of the
57above formats, optionally followed by a hash `#` and the
58name of remote head (URL fragment notation).
59`$GIT_DIR/branches/<remote>` file that stores a <url>
60without the fragment is equivalent to have this in the
61corresponding file in the `$GIT_DIR/remotes/` directory.
62
63URL: <url>
64Pull: refs/heads/master:<remote>
65
66while having `<url>#<head>` is equivalent to
67
68URL: <url>
69Pull: refs/heads/<head>:<remote>