Re: files are disappearing in git
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:13
Ryan Anderson [off-list ref] writes:
Can something like this sequence do it? ... The key point being that the merge is done in a tree that has its index out of sync with its HEAD (git push ../tree2/ .... git pull ../tree3/ ) I think that's the situation where I've personally managed to lose and/or revert some changes.
The moral of the story is not to push into the checked-out branch of a non-naked repository, or you need to do what you are doing if you choose to do so. It might have made sense if index file recorded which tree object its contents came from, but I am not sure what tools is responsible for recording that if we choose to extend index file to store that information. Probably read-tree is, but it should not do that unconditionally. In any case, the workflow presented by Nick is that individual developers use cg-* commands in CVS like workflow where the only place you push into is the central repository and everybody pulls from there, so I do not think the above example applies.