Опасность git push —force и полезность git push —force-with-lease

Вообще править историю git — это очень плохая практика. Но если очень сильно хочется, то можно. Только нужно быть очень осторожным. Отговаривать вас не буду.

Если вы поправили какие-нибудь старые коммиты в истории git, например: исправили имя автора или e-mail, или отменили последний коммит или воспользовались amend или revert, то при попытке push-а git справедливо «ругнётся»:

Чтобы нам всё же запушить наши изменения, нам нужно выполнить либо

Но в этом случае мы рискуем перетереть чьи-нибудь изменения, если с тех пор, как мы забирали изменения с сервера, кто-то успел запушить свои коммиты. Поэтому лучше использовать более безопасную команду:

Такой вариант лучше тем, что если кто-то успел запушить свои коммиты после того, как мы забирали изменения с сервера, то он не будет их перетирать, а выдаст нам ошибку, после чего мы сможем интегрировать чужие коммиты со своими изменениями и попытаться сделать push --force-with-lease ещё раз.

Один комментарий к “Опасность git push —force и полезность git push —force-with-lease”

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *