From: Jonathan Nieder Date: Wed, 25 Sep 2013 19:28:20 GMT Subject: Re: fast-forwarding tags Message-ID: <20130925192820.GZ9464@google.com> In-Reply-To: <20130925113651.GA19023@redhat.com> Hi, Michael S. Tsirkin wrote: > Linus favors one-time use signed tags, e.g. for_linus. > Unfortunately if I push to such a tag without -f, > I get an error ("already exists"). > Would it make sense for there to be an option that makes it behave like > a head, and allow fast-forward? Nah, I think I prefer keeping the safety. :) Are you pushing with "git push --tags", "git push --follow-tags", "git push origin tag for-linus", or "git push origin for-linus"? It's possible that the last two should *always* allow overwriting tags (regardless of whether the change is a fast-forward update), though I haven't thought it through carefully. In the former two cases, the check for moving an existing tag seems useful and worth preserving. In the meantime, a command like "git push origin +for-linus" seems like a pleasant way to get the job done. That way, nothing bad happens if you get distracted and forget to add the for-linus argument (unlike "git push -f origin"). Thanks, Jonathan