Виправлення: Будь ласка, введіть повідомлення про коміт, щоб пояснити, чому це об’єднання потрібно

Можливо, одне з найбільш незручних повідомлень про помилки, яке може застрягти при використанні концентратора розвитку 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 ви знову побачите рядок «Будь ласка, введіть повідомлення про коміт, щоб пояснити, чому це об’єднання потрібно».

Ви також можете відредагувати файл у будь-якому текстовому редакторі, який ви зазвичай віддаєте перевагу, і змінити редактор на будь-який, який вам подобається. Прокрутіть униз до місця, де читається [ядро], а потім змініть рядок, що читає “editor = vim”, щоб прочитати будь-який, який ви хочете. Наприклад, ви можете прочитати “editor = nano”, якщо віддаєте перевагу використанню редактора nano для кодування.