Skip to content
On this page

Правила роботи Git

Для того, щоб працювати в команді над загальним проектом, просто необхідно впевнено володіти git. Без цієї навички сенс будь-якого навчання зводиться до 0. Тут представлена невелика збірка основних команд:

Поточний статус

Перед тим, як щось робити з контролем версій, необхідно дізнатися про його стан. Для цього потрібно виконати команду:

git status

Ця команда виводить інформацію про поточний статус контролю версій (звичайний, конфліктна ситуація, в процесі rebase, в процесі merge тощо) що в проекті змінено, що додано, на якій гілці ми працюємо, скільки і які зміни можуть бути закомічені тощо.

Переключиться на гілку

Перед тим, як нам щось робити, необхідно переконатись, що ми знаходимося на правильній гілці. У команді вище ми можемо дізнатися де ми знаходимося, і якщо нам потрібно переключити гілку, то виконати команду:

git checkout develop

Ця команда перемикає нас на гілку "develop".

Отримати зміни

Оскільки ми працюємо у команді, інші учасники можуть заливати свої зміни до загального репозиторію. Щоб їх отримати, достатньо виконати команду:

git pull

Вона буквально каже нам синхронізувати наш локальний репозиторій із віддаленим.

Проте, команда вище не може допомогти у ситуації, коли і у віддаленому та на локальному репозиторіях вже є комміти. Щоб не втратити наші локальні зміни та залити зміни команди, необхідно виконати команду:

git pull --rebase

Ця команда виконує перебазування, тобто вставляє наші зміни поверх змін у віддаленому репозиторії. За допомогою неї, ми можемо без болю синхронізуватись і якщо немає жодних конфліктів, запушити наші зміни у віддалений репозиторій.

Додавання файлів

Після того, як ми залили зміни до локального репозиторію, потім змінили якісь файли, нам необхідно додати їх у контроль версій. Робиться це такою командою:

git add .

Ця команда додає всі файли для контролю версій. Щоб додати окремий файл або папку, потрібно вказати до неї шлях:

git add src/some/path/CppClass.cpp
git add src/some/path/CppClass.h

Можна використовувати регулярні вирази. Наприклад, щоб додати два файли вище за одну команду, можна написати:

git add src/some/path/CppClass.*

Створити коміт

Як тільки ми додали файли в контроль версій, щоб зафіксувати зміни, необхідно створити коміт:

git commit -m "feat: some changes"

В даному випадку ми створили коміт з повідомленням "feat: some changes". Це найшвидший спосіб створити коротке повідомлення. Зазвичай цього достатньо, але якщо в коміті потрібно написати великий текст, то потрібно прибрати прапор -m і просто написати:

git commit

З'явиться текстовий редактор (у git bash або якийсь візуальний) який попросить ввести текст комміта, де перший рядок - заголовок, решта його тіла.

Більше про правила ведення коммітів можна прочитати тут.

Надіслати зміни

Як тільки ми перестали писати код, додали потрібні файли, створили коміт, ці зміни необхідно відправити у віддалений репозиторій. Для цього скористається командою:

git push

Якщо ж ми зіткнемося з конфліктом, коли у віддаленому репозиторії вже є зміни, слід повернутись до пункту вище "git pull --rebase".

Більше інформації

Це лише короткий список найбільш базових команд, які необхідно знати щоб правильно працювати в команді. У консольній версії git команд з керування історією набагато і набагато більше.

Також для контролю версій створено спеціальні GUI. Це програми, що графічно керують контролем версій. До них відносяться GitHub Desktop, SmartGit, GitKraken та інші.

Released under the MIT License.