Случай: если вам нужно игнорировать фиксацию слияния, созданную по умолчанию , выполните следующие действия.
Скажем, новая функциональная ветка извлечена из мастера, уже имеющего 2 фиксации,
- «Добавлен A», «Добавлен B»
Checkout a new feature_branch
- «Добавлен C», «Добавлен D»
Затем ветка Feature добавляет две фиксации ->
- «Добавлен E», «Добавлен F»
Теперь, если вы хотите объединить изменения feature_branch с мастером, git merge feature_branch
сидите на мастере.
Это добавит все коммиты в основную ветку (4 в master + 2 в feature_branch = всего 6) + дополнительный коммит слияния что-то вроде 'Merge branch 'feature_branch'
', поскольку мастер расходится .
Если вам действительно нужно игнорировать эти коммиты (сделанные в FB) и добавить все изменения, сделанные в feature_branch, как один коммит, например 'Integrated feature branch changes into master'
, Run git merge feature_merge --no-commit
.
С --no-commit он выполняет слияние и останавливается непосредственно перед созданием коммита слияния. У нас будут все добавленные изменения в ветке функций теперь в master, и мы получим возможность создать новый коммит как свой собственный.
Подробнее читайте здесь: https://git-scm.com/docs/git-merge