Вирішення Конфліктів Злиття
Виправлення конфліктів
У попередньому розділі виник конфлікт злиття, тому зараз настав час його виправити.
Спочатку відкрийте файл branch_learning.txt
у редакторі Vim за допомогою наступної команди:

Якщо Vim не встановлено, можна скористатися іншим текстовим редактором, наприклад nano або atom, замінивши vim
на назву вашого редактора у наведеній вище команді.
Однак рекомендується використовувати Vim для кращої відповідності подальшим крокам.
Ось як виглядає файл, відкритий у редакторі Vim:

Тепер видно маркерів конфлікту, які вказують на конфліктні ділянки.
Ці маркери використовують стрілки та спеціальні символи для виділення відмінностей між гілками:
<<<<<<< HEAD
; позначає початок змін з поточної гілки (master
);=======
; відокремлює зміни з поточної гілки (HEAD) та ті, що надходять із гілки, яку зливають;>>>>>>> feature/new-feature
; позначає кінець змін із гілки, яку зливають.
Для вирішення конфлікту оберіть один із наступних варіантів:
- Зберегти зміни з поточної гілки (
master
); - Зберегти зміни з злитої гілки (
feature/new-feature
); - Вручну відредагувати вміст.
Вручну відредагуйте файл, об'єднавши зміни з обох гілок, використовуючи такі кроки:
1. Вхід у режим редагування
Спочатку увійдіть у режим insert у Vim, натиснувши i
.
Це дозволяє редагувати текст.
2. Редагування конфліктної секції
Далі об’єднайте рядки з обох гілок послідовно. Вміст файлу після цього має виглядати наступним чином:

3. Вихід з режиму редагування, збереження та вихід
Натисніть клавішу Escape для виходу з режиму вставки.
Далі введіть :wq
і натисніть Enter для збереження змін і виходу з Vim:

Фіксація файлу
Оскільки конфлікти вирішено, додайте файл branch_learning.txt
до області індексації та перевірте статус:

Файл було змінено та успішно додано до області підготовки. Тепер виконайте фіксацію:

Знову відкривається текстовий редактор за замовчуванням (Vim у цьому випадку) з типовим повідомленням про фіксацію щодо злиття:

Увімкнення режиму вставки у Vim за допомогою натискання i
, після чого змініть повідомлення, додавши рядок
Kept lines from both branches
для опису способу вирішення конфліктів.
Ось повне повідомлення коміту:
Щоб вийти з режиму вставки, зберегти зміни та закрити Vim, натисніть клавішу Escape, потім введіть :wq
і натисніть Enter.

Коміт виконано успішно, і конфлікт злиття тепер вирішено.
Тепер розглянемо нашу історію комітів у вигляді графа (прапорець --graph
) з одним рядком на кожен коміт (прапорець --oneline
):

Тут можна побачити останній коміт злиття разом із характерною структурою тристороннього злиття.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain what a three-way merge is?
How do I interpret the output of `git log --graph --oneline`?
What should I do if I see unexpected results in the commit graph?
Awesome!
Completion rate improved to 3.57
Вирішення Конфліктів Злиття
Свайпніть щоб показати меню
Виправлення конфліктів
У попередньому розділі виник конфлікт злиття, тому зараз настав час його виправити.
Спочатку відкрийте файл branch_learning.txt
у редакторі Vim за допомогою наступної команди:

Якщо Vim не встановлено, можна скористатися іншим текстовим редактором, наприклад nano або atom, замінивши vim
на назву вашого редактора у наведеній вище команді.
Однак рекомендується використовувати Vim для кращої відповідності подальшим крокам.
Ось як виглядає файл, відкритий у редакторі Vim:

Тепер видно маркерів конфлікту, які вказують на конфліктні ділянки.
Ці маркери використовують стрілки та спеціальні символи для виділення відмінностей між гілками:
<<<<<<< HEAD
; позначає початок змін з поточної гілки (master
);=======
; відокремлює зміни з поточної гілки (HEAD) та ті, що надходять із гілки, яку зливають;>>>>>>> feature/new-feature
; позначає кінець змін із гілки, яку зливають.
Для вирішення конфлікту оберіть один із наступних варіантів:
- Зберегти зміни з поточної гілки (
master
); - Зберегти зміни з злитої гілки (
feature/new-feature
); - Вручну відредагувати вміст.
Вручну відредагуйте файл, об'єднавши зміни з обох гілок, використовуючи такі кроки:
1. Вхід у режим редагування
Спочатку увійдіть у режим insert у Vim, натиснувши i
.
Це дозволяє редагувати текст.
2. Редагування конфліктної секції
Далі об’єднайте рядки з обох гілок послідовно. Вміст файлу після цього має виглядати наступним чином:

3. Вихід з режиму редагування, збереження та вихід
Натисніть клавішу Escape для виходу з режиму вставки.
Далі введіть :wq
і натисніть Enter для збереження змін і виходу з Vim:

Фіксація файлу
Оскільки конфлікти вирішено, додайте файл branch_learning.txt
до області індексації та перевірте статус:

Файл було змінено та успішно додано до області підготовки. Тепер виконайте фіксацію:

Знову відкривається текстовий редактор за замовчуванням (Vim у цьому випадку) з типовим повідомленням про фіксацію щодо злиття:

Увімкнення режиму вставки у Vim за допомогою натискання i
, після чого змініть повідомлення, додавши рядок
Kept lines from both branches
для опису способу вирішення конфліктів.
Ось повне повідомлення коміту:
Щоб вийти з режиму вставки, зберегти зміни та закрити Vim, натисніть клавішу Escape, потім введіть :wq
і натисніть Enter.

Коміт виконано успішно, і конфлікт злиття тепер вирішено.
Тепер розглянемо нашу історію комітів у вигляді графа (прапорець --graph
) з одним рядком на кожен коміт (прапорець --oneline
):

Тут можна побачити останній коміт злиття разом із характерною структурою тристороннього злиття.
Дякуємо за ваш відгук!