10 команд Git, без которых я не работаю в команде
Три месяца назад я снёс недельную работу коллеги. Одной командой.
Тогда я думал, что знаю Git. Знал только push и pull. Вот 10 команд, которые реально спасают:
1. git stash — срочно переключиться, не коммитя мусор. Вернулся — stash pop.
2. git cherry-pick — забрать один коммит из чужой ветки, не мержа всё.
3. git rebase -i HEAD~5 — слепить «fix, fix, реально fix» в один чистый коммит перед PR.
4. git reflog — удалил ветку, сделал reset --hard? Здесь всё. Восстанавливаешь по hash.
5. git bisect — баг где-то в 200 коммитах. Git сам делит пополам. 7 проверок вместо 200.
6. git reset --soft HEAD~1 — убрать коммит, оставить изменения в staged.
7. git commit --amend --no-edit — забыл файл? Добавляешь в предыдущий коммит.
8. git branch -vv — 15 веток, какая куда тянется? Видно за 30 секунд.
9. git diff --staged — проверить, что реально уходит в коммит. Ловит случайные console.log.
10. git log --oneline --graph --all — вся история как на ладони. Добавь алиас git lg.
Что изменилось: → Конфликты — минуты, не часы → PR проходят с первого раза → История читается как книга Какой пункт добавите вы?