stop git merge от открытия текстового редактора

Каждый раз, когда я запускаю команду git merge, он открывает текстовый редактор с просьбой добавить дополнительное сообщение.

Как я могу остановить git от открытия редактора и просто слияния моих ветвей? Потому что когда он открывает редактор, он не завершает слияние, даже если я добавлю дополнительное сообщение и сохраню файл, терминал просто зависает в моей команде git merge.

Merge branch 'my-feature-branch' into main-development

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
# 
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.

Обновить

Ответ Zeeker был верным, но у меня также была проблема с возвышенным текстом 2 в Linux. Несмотря на то, что я сохранил и закрыл редактор, терминал повесился, я считаю, что это потому, что моя последняя папка проекта в редакторе открывалась, когда с файлом слияния git. Я удалил проект из возвышенного, открыл другое возвышенное окно, закрыл оригинальное возвышенное окно и затем закрыл новое возвышенное окно. После этого, когда я запустил команду giy merge и новое возвышенное окно без открытия проекта, и как только я закрыл команду слияния git.

Ответ 1

Используйте опцию --no-edit, вы можете прочитать об этом в документации.

Обратите внимание, что использование сообщения по умолчанию не распознается, поскольку оно не содержит значимой информации об изменениях, внесенных в этот слияние.


На стороне: для продолжения слияния вам, вероятно, придется закрыть редактор.


Если у вас есть версия git до 1.7.8 все еще есть способ добиться того, чего вы хотите, используя команду env.

env GIT_EDITOR=: git merge <ref-you-want-to-merge>

Для более простого использования вы можете создать псевдоним.

git config --global alias.merge-no-edit '!env GIT_EDITOR=: git merge'

Который может быть использован с помощью git merge-no-edit <ref-you-want-to-merge>.

Ответ 2

Вы можете использовать

git merge --no-edit

Это справочная страница:

--edit, -e, --no -e dit Вызовите редактор перед успешным механическим слиянием, чтобы дополнительно отредактировать автоматически сгенерированное сообщение слияния, чтобы пользователь мог объяснить и оправдать слияние. Параметр -no -e dit может использоваться для приема автоматически сгенерированного сообщения (обычно это обескураживается). Опция --edit (или -e) по-прежнему полезна, если вы даете черновик сообщения с параметром -m из командной строки и хотите отредактировать его в редакторе.

Старые сценарии могут зависеть от исторического поведения, не позволяющего пользователю редактировать сообщение журнала слияния. Они будут видеть, что редактор открывается, когда они запускают git merge. Чтобы упростить настройку таких сценариев для обновленного поведения, переменная среды GIT_MERGE_AUTOEDIT может быть установлена в начале в нет.