* Shawn Pearce (spearce@xxxxxxxxxxx) wrote: > I'm curious... I have a pair of topic branches which don't merge > together cleanly by recursive (due to conflicting hunks in the > same line segments). I enabled git-rerere, ran the merge, fixed > up the hunks and committed it. git-rerere built its cache, as > the next time I pulled the two topic branches together and got > the same conflicts it correctly regenerated the prior resolution > (and printed a message saying as much). > > But it git-rerere left the files unmerged in the index and it > doesn't generate a commit for the merge, even though there are no > merge conflicts remaining. I expected it to update the index (to > merge the stages) and to generate a commit if possible; especially > in this case as I was pulling the exact same two commits together > again with the exact same merge base commit. > > So I'm wondering why doesn't it try to finish the merge? Was there > a really deep rooted reason behind it or was it simply easier/safer > to let the user sort out the working directory state every time? > I am maintaining different websites from one git repository. The code is almost the same between all versions, but the HTML templates are not. Sometimes, modified templates in feature branches produce mismerges which I want to fix up in different ways for different websites. There, git-rerere doesn't help me at all. It does help very much with the code and configuration files though. To conclude, I have rerere enabled, but it does not always do the right thing, so I am happy that I get a chance to inspect the files before committing (I could also amend the commit later, but I still think it's better that the user still needs to acknowledge the result of the automatic merge.) Matthias - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html