Отличается ли это содержание перебазированного коммита от оригинального коммита? - PullRequest
0 голосов
/ 06 сентября 2018

Я пытаюсь понять, почему повторяющиеся конфликты возникают во время перебазирования. Я начинаю с концепции, что, если конфликт разрешен и, следовательно, приводит к созданию новых коммитов, с этого момента не должно быть больше конфликтов.

В разделе Хранение объектов документации git объясняется, что объект фиксации содержит заголовок, предыдущее содержимое файла и новое содержимое файла, или перед и после состояний.

Если я git rebase и разрешу конфликт во время перебазирования, содержит ли новый коммит состояние "до", отличное от исходного коммита?

Я предполагаю, что если новый коммит содержит точно такие же до и после состояние содержимого коммита и всех его будущих дубликатов (созданных в результате дальнейшей перебазировки) будет продолжать вызывать конфликты. Само собой разумеется, что git rerere будет использовать этот контент в качестве отпечатка пальца, чтобы сопоставить будущие конфликты с прошлыми конфликтами и иметь возможность их автоматического разрешения.

Если, однако, новые коммиты не содержат обновленного содержимого в состоянии до , возникает два вопроса:

  1. Почему будущее перебазирование вызывает повторяющиеся конфликты, а
  2. Откуда git знает, что нужно поместить в new до состояния ?
...