1) Определение короткого хэша коммита
# git log --pretty=oneline --abbrev-commit
abcd1234 Update to Fix for issue B
cdababcd Fix issue B
deab3412 Fix issue A
....
Здесь даже git log --oneline
также можно использовать для получения короткого хэша.
2) Если вы хотите использовать последний (последний) сквош (слияние)two commit
# git rebase -i deab3412
3) Откроется редактор nano
для слияния.И это выглядит так:
....
pick cdababcd Fix issue B
pick abcd1234 Update to Fix for issue B
....
4) Переименуйте слово pick
в squash
, которое присутствует до abcd1234
.После переименования оно должно выглядеть следующим образом.
....
pick cdababcd Fix issue B
squash abcd1234 Update to Fix for issue B
....
5) Теперь сохраните и закройте редактор nano
.Нажмите ctrl + o
и нажмите Enter
для сохранения.А затем нажмите ctrl + x
для выхода из редактора.
6) Затем снова откроется редактор nano
для обновления комментариев, при необходимости обновите его.
7) Теперь его успешно завершили, вы можетепроверьте это, проверив логи.
# git log --pretty=oneline --abbrev-commit
1122abcd Fix issue B
deab3412 Fix issue A
....
8) Теперь нажмите на репо.Обратите внимание, чтобы добавить +
знак перед названием ветви.Это означает принудительное нажатие.
# git push origin +master
Примечание: это основано на использовании git на ubuntu
shell.Если вы используете разные ОС (Windows
или Mac
), то приведенные выше команды одинаковы, за исключением редактора.Вы можете получить другой редактор.