При выборе коммита с разрешениями, аналогичными разрешению ранее разрешенного патча, я иногда вижу git, в котором говорится, что он пытался повторно применить то, что я сделал ранее. Я считаю, что это rerere
компонент git.
$ git cherry-pick ...
error: could not apply a123f6c424... [commit message]
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'
Resolved 'path/to/file.c' using previous resolution.
Проблема в том, что я не доверяю своему предыдущему разрешению. Как я могу увидеть, что сделало «предыдущее разрешение»? То есть различие только конфликтующих областей.
Я знаю, что могу полностью повторно выполнить слияние с помощью следующих команд. Однако я не хочу полностью отбрасывать предыдущую работу, просто просмотрите и подтвердите ее.
git rerere forget path/to/file.c
git checkout -m path/to/file.c
# Resolve. e.g., git mergetool
Следующие вопросы аналогичны, но относятся к фиксации слияния, а не к конфликтам в целом или незафиксированным изменениям.