Re: Convenient shortcut to push delete current branch?
- From
- Robert Dailey <rcdailey.lists@gmail.com>
- Date
- Oct 1, 2015, 18:37 UTC
- Message-ID
- <CAHd499C7r+Xd1+4Sn5WdXrEHv5yp0=jbnMUvLBHHJ-1s1sJ4gQ@mail.gmail.com>
- In-Reply-To
- <CA+P7+xpWXoNiK67xCepoChr8rqX-Z5EcNb-Bs3xhC+Uot2ruYg@mail.gmail.com>
On Thu, Oct 1, 2015 at 1:22 PM, Jacob Keller <jacob.keller@gmail.com> wrote:
Show 24 quoted lines
> On Thu, Oct 1, 2015 at 9:43 AM, Robert Dailey <rcdailey.lists@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.
Show 5 quoted lines
> 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.