День 1527. #TipsAndTricks
Некоторые Малоизвестные Приемы в Git
Сегодня несколько полезных советов при работе с Git для любителей консоли.
1. Изменение последнего коммита
Когда вы делаете коммит в репозитории Git, вы создаёте новый снимок своего кода. Иногда вы можете обнаружить, что забыли включить файл, допустили опечатку в сообщении коммита или внесли другие небольшие изменения, которые хотели бы включить в последний коммит. Git позволяет изменить последний коммит с помощью флага --amend:
# изменить последний коммит новым сообщением
git commit --amend -m "New message"
# изменить, не меняя сообщения
git commit --amend --no-edit
2. Reflog
Git отслеживает все изменения, которые вы вносите в репозиторий, включая коммиты, слияния и другие операции. Reflog — это журнал всех изменений в репозитории Git, включая все коммиты, изменения веток и другие операции. Вы можете использовать журнал ссылок для восстановления потерянных коммитов, возврата к предыдущему состоянию или отмены перебазирования.
Чтобы просмотреть журнал ссылок, запустите:
git reflog
# возврат к предыдущему состоянию
git reset HEAD@{N}
3. Интерактивное перебазирование
Это мощный инструмент, который позволяет редактировать, изменять порядок или удалять коммиты перед их слиянием с основной веткой. Это особенно полезно, когда вы работаете над функциональной веткой и хотите очистить историю коммитов перед её слиянием с основной веткой:
git rebase -i HEAD~N
# изменить сообщение коммита
pick 1234567 Old message
reword 2345678 New message
# изменить порядок коммитов
pick 1234567 First commit
pick 2345678 Second commit
pick 3456789 Third commit
# удалить коммит
pick 1234567 First commit
drop 2345678 Second commit
pick 3456789 Third commit
4. Git-псевдонимы
Псевдонимы Git позволяют создавать собственные ярлыки для команд Git. Это может сэкономить ваше время и объём ввода, особенно для часто используемых команд:
git config --global alias.ci commit
# использование
git ci -m "Commit message"
5. Git Stash
Git stash позволяет временно сохранять изменения, которые вы ещё не готовы зафиксировать, без создания новой ветки:
git stash
# применить последние сохранённые изменения
git stash apply
# применить выбранные сохранённые изменения
git stash apply stash@{N}
# список всех изменений
git stash list
Больше консольных команд Git в этом посте.
Источник: https://dev.to/atordvairn/some-secret-git-tricks-that-come-in-handy-2k8i