Re: Edit a rerere conflict resolution

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Op 12-3-2012 21:34, Junio C Hamano schreef:
Vincent van Ravesteijn<vfr@xxxxxxx>  writes:

Op 12-3-2012 21:01, Junio C Hamano schreef:
...
I haven't find it necessary in practice, as the re-fix for me
typically would go like this:

      $ git merge other-branch
      ... rerere kicks in; eyeball the results
      ... ah, my earlier resolution is no longer correct
      $ edit $the_path
      ... test the result of manual edit in the context of the merged whole
      ... and be satisified
      $ git rerere forget $the_path
      $ git add $the_path
      $ git commit
      ... rerere records the updated resolution

What scenario do you have in mind that you would need to re-fix more
resolution than you need?

Here I was mistaken. I assumed that you could run 'git rerere forget' always and thus removing all conflict resolutions for a certain path. Now I see that the documentation clearly says "current conflict in <pathspec>"

The problem I have with "rerere edit" is it is an offline process,
and to validate that the update is correct, I would have to have the
problematic merge in my working tree once _anyway_.  And at that
point, updating the target file in the working tree and recording
the updated resolution using the usual "git rerere" feels a more
natural way to do so, and more importantly, it is a more convenient
way to do the "update and validate".  On the other hand, "rerere
edit" is a more convenient way to "update but not validate the
result".

This last part probably makes the difference indeed. In my case the merge resolution was very very easy (the conflicting hunks have fileformat version numbers), but it is a bit annoying and it requires some 'vim'-skills to redo the merge conflict just to correct a newline somewhere, or a missing ','.

As I wrote, the merge resolutions in my case were very easy (logically), but just annoying (motorically).
These could even be resolved by some merge-conflict hook.

Examples:
- for this file we know the conflict always has to be resolved by adding the oldest hunk before the newest hunk. For example, new file formats will be added sequentially to a file. - for this file we can resolve it anyway we want. For example, a release notes file which just enumerates all changes in random order.

Anyway, has anyone thought about such a hook ?

Vincent
--
To unsubscribe from this list: 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


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]