Исправление: введите сообщение фиксации, чтобы объяснить, почему это слияние необходимо

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

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

Выйдите из git Merges, которые запрашивают сообщения о фиксации

Как правило, вы увидите это, если выполнили обычное слияние в git как часть отдельного документа. Иногда вы можете получить это приглашение после блока кода, когда вы объединяете обновленный апстрим в отдельную тематическую ветку. Ни одна из документации от git не объясняет, что делать, когда вы ее доберетесь, потому что на самом деле это вообще не подсказка.

Обе строки этого сообщения начинаются с символа #, что означает, что это комментарии. Поскольку git не знает, сколько разработчиков работает над проектом, это добавлено, чтобы вы могли оставить сообщение другим о том, почему вы объединили апстрим в ветку темы. Однако вам нужно знать, какой редактор вы используете, чтобы выйти из него.

В большинстве случаев вы используете редакторы vi или vim. Нажмите клавишу Esc, затем введите: wq и нажмите Enter для выхода. Таким же образом вы выходите из vim в любом другом случае. Это сохраняет файл, а затем закрывается, что сразу же выведет вас из git.

Обратите внимание на любые подсказки, которые могут помочь вам узнать, какой редактор вы используете. На скриншоте нашего примера дополнительные символы тильды, показывающие новые строки, которые еще предстоит вставить в файл, были явным признаком того, что платформа git поместила нас в vim. Опять же, если вы не можете понять, какой редактор вы используете, нажмите Esc и используйте команду: wq, потому что vi и vim на данный момент почти универсальны, так что вы обнаружите, что это обычно вытаскивает вас.

С другой стороны, если вы использовали nano, просто нажмите Ctrl + X и введите y, когда вас спросят, сохранять ли изменения. Как только вы нажмете Enter, вы выйдете из git и вернетесь туда, где вы были раньше. В этих случаях вы обычно видите строку в верхней части терминала с надписью «GNU nano». Если нет, то найдите несколько сочетаний клавиш внизу окна.

Если вы обнаружите, что ни один из этих методов не работает, нажмите Ctrl + X, а затем Ctrl + C, чтобы выйти. Это должно вывести вас из git на случай, если вы использовали редактор emacs. Это необычное обстоятельство. В большинстве случаев Esc, за которым следует: wq, должны работать, а Ctrl + X, за которым следует y, должны работать в тех случаях, когда это не так. Вы захотите использовать Ctrl + X, а затем Ctrl + C, только если вы знаете, что находитесь в emacs, или если эти два метода не работают. Ctrl + C также должен работать, хотя и без сохранения, если вы используете редактор JOE на своем терминале git.

Когда вы выйдете из командной строки и вернетесь обратно, введите cat ~ / .gitconfig | grep в терминале, чтобы точно узнать, в каком редакторе вы застряли. Вы получите ответную строку, которая читает что-то вроде editor = vim, что будет именем редактора, для которого по умолчанию используется git. В будущем вы можете использовать стандартный метод для выхода из этого редактора, если после обычного слияния git вы снова увидите строку «Пожалуйста, введите сообщение фиксации, чтобы объяснить, почему это слияние необходимо».

Вы также можете отредактировать файл с помощью любого текстового редактора, который вы обычно предпочитаете, и изменить редактор на тот, который вам нравится. Прокрутите вниз до места, где написано [core], а затем измените строку с надписью «editor = vim» на ту, которую хотите. Например, вы можете захотеть читать «editor = nano», если вы предпочитаете использовать редактор nano для кода.