6

Often Git solves conflicts based on previous resolutions.

Example:

Auto-merging <file>
CONFLICT (content): Merge conflict in <file>
Resolved '<file>' using previous resolution.
Exit 1
  1. When will Git decide to solve a conflict based on previous resolutions?

  2. How can I disable the automatic solving based on previous resolutions?

mkrieger1
  • 19,194
  • 5
  • 54
  • 65
Noa Yehezkel
  • 468
  • 2
  • 4
  • 20
  • 1
    Possibly helpful: https://makandracards.com/makandra/21795-git-how-to-forget-a-recorded-resolution – Tim Biegeleisen Mar 21 '17 at 15:47
  • 4
    Look into `git rerere`, see here: http://stackoverflow.com/questions/5096649/why-does-git-remember-and-use-a-conflict-resolution-from-an-aborted-rebase-witho – Tim Biegeleisen Mar 21 '17 at 15:48

1 Answers1

1

This is a message from “git rerere”. It is invoked manually unless it is enabled (using Git config rerere.enabled set to true), i.e. set to run automatically when you resolve conflicts. And since you don’t know what it is then I must surmise that you have set it to that value.

When will Git decide to solve a conflict based on previous resolutions?

git-rerere(1) will run if a previous resolution has been recorded in the cache. Check if it exists with

ls .git/rr-cache

If this cache has old resolutions then you can remove them with:

git rerere gc

How can I disable the automatic solving based on previous resolutions?

I think you can just remove the cache:

rm -r .git/rr-cache/

And maybe disable new resolution recordings by setting rerere.enabled to false.

Guildenstern
  • 2,179
  • 1
  • 17
  • 39