From: Karl Hasselström Date: Tue, 03 Jun 2008 06:49:57 GMT Subject: Re: [PATCH v2 2/2] Make old sha1 optional with git update-ref -d Message-ID: <20080603064957.GA6701@diana.vm.bytemark.co.uk> In-Reply-To: <7vk5h73w2i.fsf@gitster.siamese.dyndns.org> On 2008-06-02 22:51:33 -0700, Junio C Hamano wrote: > Karl Hasselström writes: > > > Giving the old sha1 is already optional when changing a ref, and > > it's quite handy when running update-ref manually. So make it > > optional for deleting a ref too. > > "Handy" is not a very good reason when talking about plumbing > command like update-ref that takes an extra parameter for safety of > the last step in read, operate, verify-and-update sequence. > > Although it is not a reason _bad enough_ to make your patch a bad > idea, perhaps you should rethink the problem at the same time? > Whatever you are trying to do cannot be done without manually > invoking update-ref directly by the end user, perhaps that needs to > be addressed? I need this from time to time when experimenting with StGit -- or, more precisely, when cleaning up afterwards in case it didn't go so well. Packed refs means I can't safely just edit/delete files under .git/refs anymore, so I use update-ref instead. And having to use the safety belt every time is just plain tedious. I'd say this is a perfect example of when using the plumbing by hand is really what you want. (In this kind of situation, branch -D often doesn't work since my ref isn't under refs/heads, and besides I really don't want any of it's smarts right then -- I want to delete a ref, nothing more.) Better suggestions welcome, of course. -- Karl Hasselström, kha@treskal.com www.treskal.com/kalle