summaryrefslogtreecommitdiff
path: root/t/t2201-add-update-typechange.sh
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2008-04-23 05:16:06 -0400
committerLibravatar Junio C Hamano <gitster@pobox.com>2008-04-24 22:13:24 -0700
commitf8aae120345f511e59bb008e8de2a8f6e65cf377 (patch)
tree5055975a63267eabbb40ce30d630dd5bd402e03a /t/t2201-add-update-typechange.sh
parentMerge branch 'maint-1.5.4' into maint (diff)
downloadtgif-f8aae120345f511e59bb008e8de2a8f6e65cf377.tar.xz
push: allow unqualified dest refspecs to DWIM
Previously, a push like: git push remote src:dst would go through the following steps: 1. check for an unambiguous 'dst' on the remote; if it exists, then push to that ref 2. otherwise, check if 'dst' begins with 'refs/'; if it does, create a new ref 3. otherwise, complain because we don't know where in the refs hierarchy to put 'dst' However, in some cases, we can guess about the ref type of 'dst' based on the ref type of 'src'. Specifically, before complaining we now check: 2.5. if 'src' resolves to a ref starting with refs/heads or refs/tags, then prepend that to 'dst' So now this creates a new branch on the remote, whereas it previously failed with an error message: git push master:newbranch Note that, by design, we limit this DWIM behavior only to source refs which resolve exactly (including symrefs which resolve to existing refs). We still complain on a partial destination refspec if the source is a raw sha1, or a ref expression such as 'master~10'. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t2201-add-update-typechange.sh')
0 files changed, 0 insertions, 0 deletions