@matheusbsbs / matheus-bagliano / commits / 68d06c5200
Fork 0

Documentation/push: clarify matching refspec behavior

The previous text was correct, but it was easy to miss the fact that we are talking about "matching" refs. That is, the text can be parsed as "we push the union of the sets of remote and local heads" and not "we push the intersection of the sets of remote and local heads". (The former actually doesn't make sense if you think about it, since we don't even _have_ some of those heads). A careful reading would reveal the correct meaning, but it makes sense to be as explicit as possible in documentation. We also explicitly use and introduce the term "matching"; this is a term discussed on the list, and it seems useful to for users to be able to refer to this behavior by name. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jeff King committed Feb 19, 2008 at 11:25 UTC 68d06c5200775ffda91881254ca7a92f27db68ef
1 file changed +3 -3
Documentation/git-push.txt
+3 -3
@@ -47,9 +47,9 @@ even if it does not result in a fast forward update.
47 +
48 Note: If no explicit refspec is found, (that is neither
49 on the command line nor in any Push line of the
50 -corresponding remotes file---see below), then all the
51 -heads that exist both on the local side and on the remote
52 -side are updated.
50 +corresponding remotes file---see below), then "matching" heads are
51 +pushed: for every head that exists on the local side, the remote side is
52 +updated if a head of the same name already exists on the remote side.
53 +
54 `tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`.
55 +