В последнее время, после любого git pull
, git начал разворачивать мой текстовый редактор и запрашивать сообщение о слиянии. Сообщение фиксации уже предварительно заполнено, и мне просто нужно сохранить и закрыть окно, чтобы завершить pull.
В прошлом он выполнял бы слияние молча, со стандартным сообщением фиксации (вдоль строк Merge branch 'dev' of remote.com:/repo into dev
).
Недавно я обновил git до версии 1.7.11.3 (через homebrew), но не могу придумать ничего, что я мог бы сделать, чтобы изменить это поведение. Является ли это настройкой, или же каким-то образом можно вернуться к тому, как это было?
Ответ 1
В git 1.7.10 разработчики git решили, что комманды слияния могут быть сделаны слишком легко. Как объяснено в этом сообщении в блоге, заставляя поведение интерактивного сообщения совершать сообщения, необходимо сделать эти сообщения фиксации более подробными и может уменьшить общую частоту ненужных слияний.
Вы можете использовать флаг --no-edit
, чтобы избежать этого, но, ну, не делайте этого. Сочетания слияния, как и любые фиксации истории, должны быть хорошо построены. Ваша история должна быть полезной.
Ответ 2
Чтобы создать ярлык для будущего использования, выполните следующие действия: -
Измените ~/.gitconfig
следующим образом:
[core]
mergeoptions = --no-edit
Или выполните в терминале
следующее:
git config --global core.mergeoptions --no-edit
Ответ 3
Во-первых, обратите внимание на предупреждения в ответе Кристофера выше.
Затем, если вы все еще хотите отключить автоматическое редактирование сообщения коммита слияния, установите эту переменную среды:
GIT_MERGE_AUTOEDIT=no
Эта переменная окружения и ее настройка "нет" описаны на странице git merge doc. Рекомендуется использовать его только в сценариях, которые нужно объединять неинтерактивно, но, конечно, его можно установить как часть среды оболочки, чтобы сделать его эффекты более постоянными.
Ответ 4
Было бы замечательно, если бы он выбрал опцию "-m", чтобы вы могли ее сценарий/автоматизировать.