DEV Community


Discussion on: 10 Common Git Problems and How to Fix Them

danaloni profile image
Dan Aloni

I strongly recommend to all careful developers to never use rerere.

Resolving a conflict does not sure that you resolved it correctly, as some bugs are only discovered quite a while after the conflict resolution is done. Therefore, you certainly would not want Git to remember conflict resolutions and replay them automatically. Even though it is possible to purge the rerere DB, nothing guarantees that you would remember to do so when re-doing merges.

It is such as badly designed "feature", that if rerere.enable is not specified to any value, and the current repository has a rerere DB, it will be enabled in conflict resolution. Therefore, it is best to have:

git config --global rerere.enabled false
Enter fullscreen mode Exit fullscreen mode

I prefer a rule of thumb, that if you find yourself repeating the same conflict resolutions over and over, then your development process could be wrong and you need to rethink the process.

tmr232 profile image
Tamir Bahar

I have to agree on this one. I've been burned by rerere on multiple occasions. You merge, there are seemingly no conflicts, and then everything breaks.
I'd much rather repeat the same resolution over and over again and not get a bad automated resolution.