ls-remote: send server options when using protocol v2
[git/git.git] / Documentation / git-ls-remote.txt
1 git-ls-remote(1)
2 ================
3
4 NAME
5 ----
6 git-ls-remote - List references in a remote repository
7
8
9 SYNOPSIS
10 --------
11 [verse]
12 'git ls-remote' [--heads] [--tags] [--refs] [--upload-pack=<exec>]
13 [-q | --quiet] [--exit-code] [--get-url]
14 [--symref] [<repository> [<refs>...]]
15
16 DESCRIPTION
17 -----------
18 Displays references available in a remote repository along with the associated
19 commit IDs.
20
21
22 OPTIONS
23 -------
24 -h::
25 --heads::
26 -t::
27 --tags::
28 Limit to only refs/heads and refs/tags, respectively.
29 These options are _not_ mutually exclusive; when given
30 both, references stored in refs/heads and refs/tags are
31 displayed.
32
33 --refs::
34 Do not show peeled tags or pseudorefs like HEAD in the output.
35
36 -q::
37 --quiet::
38 Do not print remote URL to stderr.
39
40 --upload-pack=<exec>::
41 Specify the full path of 'git-upload-pack' on the remote
42 host. This allows listing references from repositories accessed via
43 SSH and where the SSH daemon does not use the PATH configured by the
44 user.
45
46 --exit-code::
47 Exit with status "2" when no matching refs are found in the remote
48 repository. Usually the command exits with status "0" to indicate
49 it successfully talked with the remote repository, whether it
50 found any matching refs.
51
52 --get-url::
53 Expand the URL of the given remote repository taking into account any
54 "url.<base>.insteadOf" config setting (See linkgit:git-config[1]) and
55 exit without talking to the remote.
56
57 --symref::
58 In addition to the object pointed by it, show the underlying
59 ref pointed by it when showing a symbolic ref. Currently,
60 upload-pack only shows the symref HEAD, so it will be the only
61 one shown by ls-remote.
62
63 -o <option>::
64 --server-option=<option>::
65 Transmit the given string to the server when communicating using
66 protocol version 2. The given string must not contain a NUL or LF
67 character.
68 When multiple `--server-option=<option>` are given, they are all
69 sent to the other side in the order listed on the command line.
70
71 <repository>::
72 The "remote" repository to query. This parameter can be
73 either a URL or the name of a remote (see the GIT URLS and
74 REMOTES sections of linkgit:git-fetch[1]).
75
76 <refs>...::
77 When unspecified, all references, after filtering done
78 with --heads and --tags, are shown. When <refs>... are
79 specified, only references matching the given patterns
80 are displayed.
81
82 EXAMPLES
83 --------
84
85 $ git ls-remote --tags ./.
86 d6602ec5194c87b0fc87103ca4d67251c76f233a refs/tags/v0.99
87 f25a265a342aed6041ab0cc484224d9ca54b6f41 refs/tags/v0.99.1
88 7ceca275d047c90c0c7d5afb13ab97efdf51bd6e refs/tags/v0.99.3
89 c5db5456ae3b0873fc659c19fafdde22313cc441 refs/tags/v0.99.2
90 0918385dbd9656cab0d1d81ba7453d49bbc16250 refs/tags/junio-gpg-pub
91 $ git ls-remote http://www.kernel.org/pub/scm/git/git.git master pu rc
92 5fe978a5381f1fbad26a80e682ddd2a401966740 refs/heads/master
93 c781a84b5204fb294c9ccc79f8b3baceeb32c061 refs/heads/pu
94 $ git remote add korg http://www.kernel.org/pub/scm/git/git.git
95 $ git ls-remote --tags korg v\*
96 d6602ec5194c87b0fc87103ca4d67251c76f233a refs/tags/v0.99
97 f25a265a342aed6041ab0cc484224d9ca54b6f41 refs/tags/v0.99.1
98 c5db5456ae3b0873fc659c19fafdde22313cc441 refs/tags/v0.99.2
99 7ceca275d047c90c0c7d5afb13ab97efdf51bd6e refs/tags/v0.99.3
100
101 GIT
102 ---
103 Part of the linkgit:git[1] suite