Сквош фиксируется в одном¶
Резервный¶
Перед тем, как сделать сквош, подумайте о «резервном копировании» ваших коммитов.
Локальное резервное копирование:
git tag 9.0-new-module-backup
Удаленное резервное копирование
git push origin 9.0-new-module:9.0-new-module-backup
Для восстановления исходного состояния вы можете использовать следующую команду:
# be sure that you on the branch you are going to change
git status
# restore from tag
git rebase 9.0-new-module-backup -X theirs
# restore from remote branchtag
git rebase origin/9.0-new-module-backup -X theirs
`` git commit –amend``¶
Вместо создания нового коммита, добавляет обновления к последнему коммиту.
`` git rebase -i``¶
Интерактивная сквош
git rebase -i <your-first-commit>^
# e.g.
git rebase -i 7801c8b^
Затем отредактируйте открытый файл и оставьте `` pick`` для первого коммита и замените `` pick`` на `` squash`` для остальных. Например
Происхождение
TODO
Отредактированный
TODO
Предупреждение
Если вы удалите строку здесь, то этот коммит будет потерян.
От себя¶
git push -f origin 9.0-new-module