Я работаю в филиале, скажем master
. Изменения уже перенесены в удаленный репозиторий. Моя история выглядит так:Возвращающаяся ветка в git
*----*----*----* master
Тогда я понимаю, что я, возможно, сделал что-то неправильно и хочу начать с другого подхода. Я делаю это, создавая новую ветвь:
*----*----*----* master
\
*----*----* different-approach
После некоторых новых фиксаций, я решил, что новый подход работает лучше, чем в главной ветви, так что я хочу использовать, что теперь на master
отрасли , Так что я слияния:
git checkout master
git merge different-approach
В случае возникновения конфликта, я всегда выбираю версию с different-approach
слияния. Проблема в том, что для некоторых файлов конфликт отсутствует, поэтому git делает автоматическое слияние, оставляя в плохом файле из ветки master
.
Что я могу сделать в этом случае? Кажется, что нет никакого способа принудительного ручного слияния для всех файлов в git. Конечно, я могу клонировать репозиторий в другой каталог и копировать все файлы из него в исходный каталог, прежде чем совершать слияние. Но нет ли более чистого и более простого способа сделать это?
Это может вызвать проблему, если другие люди нажали изменения в мастер. Их фиксации также будут отменены. – gtrig
Ну, я ожидаю, что автор сможет запустить любой просмотрщик журналов, чтобы подтвердить, что он вернул. –