Да: используйте rerere , re используйте re проводной re решения.
Если вы делаете git config rerere.enabled true
вы включаете режим ~ auto ~, где он автоматически запускается, когда слияние заканчивается конфликтами, и снова, когда вы фиксируете результат.
Это будет удобно даже в вашем случае, когда вы не собираетесьcommit, потому что вы можете добраться до того места, о котором говорите, где вы сделали много разрешений и поняли, что можете избежать почти всего остального с помощью небольшой предварительной обработки, а затем выполните git rerere
вручную перед прекращением слияния.
Когда выполняется rerere, он (a) запоминает новые конфликты и новые разрешения и (b) применяет запомненные разрешения к конфликтам, которые он видел раньше.Так что в вашей ситуации с включенным автоматическим режимом (я думаю, что это почти универсально для людей, которые помнят об этом), он бы заметил все конфликты и применил бы любые резолюции, которые вы показывали раньше, поэтому, когда вы доберетесь докогда вы сделали все, что могли, и собираетесь отступить и попытаться снова с предварительно обработанными данными, которые вы запускаете git rerere
вручную, он увидит все новые разрешения, которые вы придумали, и проигнорирует оставшиеся конфликты, потому что он видел те, которые были дои у них ничего нет.Затем прервите слияние, выполните предварительную обработку, повторно запустите слияние, и автоматическое повторное сопоставление разрешит все конфликты, которые он может распознать, и заметит любые новые.
Будьте готовы, однако, Git не может распознать эти два разных текстаханки семантически идентичны, поэтому, если ваш prettyprinter разбивает строки и тому подобное, то даже если вы разрешите семантический конфликт в старом тексте, Git не сможет создать аналогичное текстовое изменение в новом тексте.