Такого рода вопрос , почему вопрос действительно должен быть отправлен тому, кто первым написал команду;только они действительно знают.
Базовая реализация ленива: она проходит по тому же пути кода, что и обычное слияние, но пропускает запись файла MERGE_HEAD
, а затем завершает работу рано, чтобы избежать прохождения кода, который мог бы сделатькоммит слияния.
Если вы используете опцию --no-commit
, код проходит почти по тому же пути.Фактически, управляющей переменной для этого является option_commit
, и установка --squash
очищает option_commit
, как если бы вы работали с --no-commit
.
Если --squash
не очистить option_commit
, похоже, существующий путь будет жаловаться на сбой автоматического объединения.Так что может просто быть ленью.