Git/Часті питання

Матеріал з Вікіпідручника
< Git

Git:

Як подивитись зміни що були позначені для додавання але ще не закомічені?[ред.]

git diff --cached

Як відкотити файл до певної версії?[ред.]

git checkout ідентифікатор_комміта шлях/до/файлу

Як відредагувати комміт?[ред.]

Щойно зроблений:

git --amend -m "нове повідомлення"

Кількох (чи одного) комітів в минулому:

git rebase -i "ідентифікатор комміта, перед тим який ви хочете змінити"

Далі відкриється редактор в якому треба буде позначити всі комміти які треба змінити міткою "edit". Git по черзі переходитиме до кожного позначеного комміта. Для кожного з них можна виконати:

git commit --amend -m 'нове повідомлення' # змінити комміт
git rebase --continue # перейти до наступного

Як перемістити коміти в нову гілку?[ред.]

Якщо ви мали робити коміти в новій гілці, але помилились і закомітили (наприклад три штуки) в якусь іншу, то

git branch newbranch # створити нову гілку (яка вказуватиме на поточний коміт)
git reset --hard HEAD~3 # Переміститись в поточній гілці на 3 коміти назад. Всі незакомічені зміни будуть втрачені!
git checkout newbranch # Перейти на нову гілку.