Почему git подсказывает мне сообщение с сообщением об окончании слияния?

В последнее время, после любого 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", чтобы вы могли ее сценарий/автоматизировать.