On Thu, Oct 1, 2015 at 1:22 PM, Jacob Keller <jacob.kel...@gmail.com> wrote:
> On Thu, Oct 1, 2015 at 9:43 AM, Robert Dailey <rcdailey.li...@gmail.com> 
> wrote:
>> For convenient pushing of current branch, git supports this syntax:
>>
>> $ git push origin HEAD
>>
>> This will push your current branch up. However, is there such a
>> shortcut for *deleting* the branch? The only goal here is to avoid
>> having to type the branch name in the push command. Normally I rely on
>> tab completion but we have tons of branches, all which start with some
>> prefix mixed with numbers, so it becomes cumbersome to rely on tab
>> completion. Ideally I'd like to be able to do:
>>
>> $ git push --delete origin HEAD
>> $ git push origin :HEAD
>>
>> Is there a syntax like this available?
>
> You can do
>
> git push origin:<branchname>
>
> but I don't believe HEAD is supported. It might be valuable to extend
> push to have a --delete option which would maybe be useful for those
> who didn't learn the full refspec syntax.

Push already has a --delete option.

> I don't think git push origin :HEAD makes too much sense, since that's
> on the remote side of a refspec, and you want it interpreted
> locally... I suppose it makes sense somewhat, but other refspecs with
> HEAD on the remote side of the refspec don't really make sense, where
> as HEAD always makes sense on the local side of the refspec.

HEAD makes sense on the remote side if you think of it like an alias:

HEAD -> branch-name -> SHA1

HEAD simply points to branch-name. It makes sense for git to assume
that we should never do anything with real HEAD ref on the remote
side, and instead treat it as a substitution for the remote name. My
assumption may not be correct, but at the very least it should be a
niche case.
--
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