Створення нової гілки
Припустимо, що у нас вже створений git-проєкт і ми знаходимося в гілці master. Про сторення git-проєктів більше можна почитати тут. Створити нову гілку з назвою test можна за допомогою наступної команди:
git branch test
Отже, тепер у нас є 2 гілки. Подивитися список гілок можна за допомогою команди
git branch
Ми отримаємо список гілок, а також буде відмічено поточну гілку.
Якщо потрібно вивести інформацію про останній комміт в кожній із гілок, то можна зробити так:
git branch -v
Ще один спосіб створення нової гілки - це створення за допомогою команди checkout з параметром -b. При цьому створюється нова гілка та відбувається перехід до неї:
git checkout -b new-test
Перехід до іншої гілки
Перехід до іншої гілки можна зробити за допогою команди
git checkout test
Відповідно повернутися назад:
git checkout master
Відмінності між гілками
В процесі розробки комміти можуть додаватися до кожної з гілок (зрозуміло, що гілок може бути більше). Часто потрібно подивитися, чим вони відрізняються. Це можна зробити за допомогою команди diff.
Якщо поточною гілкою є master, то подивитися різницю між master та test можна так:
git diff test
Якщо поточною є деяка третя гілка, то подивитися відмінності можна так:
git diff test master
Якщо повна інформація не потрібна, а потрібен лише список файлів, які відрізняються, можна використати параметр --name-status
git diff --name-status test master
Злиття гілок
Припустимо, що в гілках master та new-test були зроблені комміти, але вони стосувалися різних файлів. Тоді, перебуваючи в гілці master, можна об'єднати ці гілки наступною командою:
git merge new-test
При цьому автоматично буде створений новий комміт.
Подивитися список гілок, які ще не злиті з поточною гілкою, можна так:
git branch --no-merge
Гілка new-test фактично стає непогтрібно після злиття. Тому її можна видалити:
git branch -d new-test
Якщо в двох гілках є комміти, які змінюють один і той же файл, то після запуску команди merge з'явиться інформація про конфлікт у файлі (файлах).
Одним із шляхів вирішення цієї проблеми - є редагування таких файлів вручну, а потім запуск команди
git add
Після цього можна завершити злиття командою
git commit
Коментарі
Дописати коментар