diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-01-31 21:06:06 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-01-31 21:27:58 -0800 |
commit | 2ad9ba0382ca0d9a36746db804d1bf01f5281b8e (patch) | |
tree | e64644544cc8f69a5ecc1759ed061c2fab571223 | |
parent | 11b17afc933446c3afdbed72afaa440348f2b0ff (diff) | |
download | git-2ad9ba0382ca0d9a36746db804d1bf01f5281b8e.tar.gz git-2ad9ba0382ca0d9a36746db804d1bf01f5281b8e.tar.xz |
request-pull: explicitly ask tags/$name to be pulled
When asking for a tag to be pulled, disambiguate by leaving tags/ prefix
in front of the name of the tag. E.g.
... in the git repository at:
git://example.com/git/git.git/ tags/v1.2.3
for you to fetch changes up to 123456...
This way, older versions of "git pull" can be used to respond to such a
request more easily, as "git pull $URL v1.2.3" did not DWIM to fetch
v1.2.3 tag in older versions. Also this makes it clearer for humans that
the pull request is made for a tag and he should anticipate a signed one.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Documentation/howto/using-signed-tag-in-pull-request.txt | 4 | ||||
-rwxr-xr-x | git-request-pull.sh | 2 | ||||
-rwxr-xr-x | t/t5150-request-pull.sh | 6 |
3 files changed, 4 insertions, 8 deletions
diff --git a/Documentation/howto/using-signed-tag-in-pull-request.txt b/Documentation/howto/using-signed-tag-in-pull-request.txt index a1351c5bb..98c0033a5 100644 --- a/Documentation/howto/using-signed-tag-in-pull-request.txt +++ b/Documentation/howto/using-signed-tag-in-pull-request.txt @@ -109,7 +109,7 @@ The resulting msg.txt file begins like so: are available in the git repository at: - example.com:/git/froboz.git frotz-for-xyzzy + example.com:/git/froboz.git tags/frotz-for-xyzzy for you to fetch changes up to 703f05ad5835c...: @@ -141,7 +141,7 @@ After receiving such a pull request message, the integrator fetches and integrates the tag named in the request, with: ------------ - $ git pull example.com:/git/froboz.git/ frotz-for-xyzzy + $ git pull example.com:/git/froboz.git/ tags/frotz-for-xyzzy ------------ This operation will always open an editor to allow the integrator to fine diff --git a/git-request-pull.sh b/git-request-pull.sh index 64960d65a..e6438e24c 100755 --- a/git-request-pull.sh +++ b/git-request-pull.sh @@ -63,7 +63,7 @@ die "fatal: No commits in common between $base and $head" find_matching_ref=' sub abbr { my $ref = shift; - if ($ref =~ s|refs/heads/|| || $ref =~ s|refs/tags/||) { + if ($ref =~ s|^refs/heads/|| || $ref =~ s|^refs/tags/|tags/|) { return $ref; } else { return $ref; diff --git a/t/t5150-request-pull.sh b/t/t5150-request-pull.sh index da25bc2d1..7c1dc641d 100755 --- a/t/t5150-request-pull.sh +++ b/t/t5150-request-pull.sh @@ -179,11 +179,7 @@ test_expect_success 'request names an appropriate branch' ' read repository && read branch } <digest && - { - test "$branch" = full || - test "$branch" = master || - test "$branch" = for-upstream - } + test "$branch" = tags/full ' |