Git - как слить "мягко"? - PullRequest
       15

Git - как слить "мягко"?

1 голос
/ 10 марта 2019

Я придумал выражение «мягко», потому что вы можете почти получить желаемый результат с помощью следующих команд:

git merge <branch>
git reset --soft HEAD~1

Это сохранит все последние изменения от слияния в памяти, и вам просто нужно их зафиксировать. Но проблема в том, что при коммите git больше не рассматривает это как коммит слияния.

Еще один способ получить почти тот же результат - объединиться с конфликтами. Как только вы разрешите все свои конфликты и сделаете коммит, git знает, что это коммит слияния.

1 Ответ

4 голосов
/ 10 марта 2019

Похоже, что вы ищете

git merge --no-commit <someBranch>

( документ здесь )

Это способ заявить, что это конфликт и вы хотите, чтобы git рассматривал это слияние как таковое.

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

(Предупреждение: -n - это не сокращение для этого, а скорее для --no-stat)

...