Earlier, Peff taught "git fetch origin master" to update a
remote-tracking branch by internally mapping the colon-less refspec
'master' to '+refs/heads/master:refs/remotes/origin/master'.  Both

        git fetch origin
        git fetch origin master

would update the same refs/remotes/origin/master, which avoids
surprises.

However, we did not have a similar refspec mapping on the push
side.  This three-patch series does just that, and would help
triangular workflow by making these two:

        git checkout master && git push origin
        git push origin master

update the same ref at the 'origin'.

Junio C Hamano (3):
  builtin/push.c: use strbuf instead of manual allocation
  push: use remote.$name.push as a refmap
  push: also use "upstream" mapping when pushing a single ref

 Documentation/git-push.txt |  9 ++++--
 builtin/push.c             | 79 ++++++++++++++++++++++++++++++++--------------
 remote.c                   |  8 ++---
 remote.h                   |  2 ++
 t/t5516-fetch-push.sh      | 75 +++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 144 insertions(+), 29 deletions(-)

-- 
1.8.5.1-400-gbc1da41

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to