Мы все слышали, что никогда не следует переустанавливать опубликованную работу, ее опасную и т.д. Однако я не видел рецептов, опубликованных для того, как справляться с ситуацией в случае публикации перестановки.
Теперь обратите внимание, что это реально реально, только если репозиторий клонирован только известной (и предпочтительно небольшой) группой людей, так что любой, кто подталкивает rebase или reset, может уведомить всех остальных, что им нужно будет обратите внимание в следующий раз, когда они извлекут (!).
Одно очевидное решение, которое я видел, будет работать, если у вас нет локальных коммитов на foo
, и он получает rebased:
git fetch
git checkout foo
git reset --hard origin/foo
Это просто выкинет локальное состояние foo
в пользу его истории в удаленном репозитории.
Но как вы справляетесь с ситуацией, если в этой ветке произошли существенные локальные изменения?