Thread (30 messages) 30 messages, 9 authors, 2016-06-15

Re: Question about 'branch -d' safety

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:49:07

Dnia niedziela 11. lipca 2010 08:55, Clemens Buchacher napisał:
On Sat, Jul 10, 2010 at 02:57:35PM -0700, Jakub Narebski wrote:
quoted
It's unfortunately not so easy.  The problem you have to solve is D/F
conflict: if you have 'foo/bar' branch, you can't create 'foo' branch,
but after deleting 'foo/bar' you want to be able to create 'foo'
branch and reflog for 'foo' branch.
I'm going to read up on Jonathan's pointers. But I do not really
see the problem above. If the reflog already exists, the new branch
simpliy continues using it. So if the branch is re-created, it's as
if the branch had never been deleted.
The problem is, that when you have 'foo/bar' branch, then you have
'foo/bar' reflog.  When you delete branch 'foo/bar', but do not delete
'foo/bar' reflog (only add to it branch deletion event), and then you
want to create 'foo' branch, git wouldn't be able to create reflog
fo 'foo' because of directory / file (D/F) conflict: there is 'foo/'
directory preventing file 'foo' from being created.
 
Or possibly we add a special reflog entry which points the branch
to a zero sha to signify that the branch had been deleted.
That is a good idea anyway.
-- 
Jakub Narebski
Poland
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help