2015-02-24 3 views
6

У меня вытащил из другую ветку с пульта. 2 ветви различны, но слияние произошло тихо в моей текущей ветке. В настоящее время я работаю над ветвью «master» локально, и он был обновлен с изменениями удаленной ветви - «FE_Changes».отменить git вытащить неправильную ветку на мастер

Как удалить эффекты ветки «FE_Changes» из моей главной ветки?

+0

Вы используете git внутри и IDE? Терминал? или что-то типа того? – acostela

+0

Да Im фактически использует Git Extensions. Это произошло, когда я вошел в ветвь «FE_Changes», находясь в «ведущей» ветке. Вместо этого я должен был использовать диалог проверки. – OverTheEdge

+0

Можете ли вы показать результат (насколько это уместно) следующей команды: git log --all --graph --oneline --decorate Предполагая, что в журналах фиксации нет важной информации, конечно ... это должно помочь прояснить, что именно произошло. – mephisto

ответ

7

git reset --hard HEAD~1

Это нюк самый последний коммит в ближайшем отделении. Предполагая, что ваша стратегия вытягивания сливается, тогда на вашей локальной ветви хозяина должен быть только один мошенник. Вы упомянули, что «слияние произошло тихо», поэтому это должно работать в вашем случае. После того, как вы установили основную ветвь, вы можете снова вытащить ее, на этот раз убедитесь, что вы вытащили из правильной удаленной ветви.

+0

wow, это сделало это. Должен сказать, что я сделал некоторые сумасшедшие вещи в графическом интерфейсе Git Extensions, origin/master, git res et (для HEAD не HEAD ~ 1), но все же это перезаписано и привело к изменениям. И что еще, я могу теперь вытащить и получить последние обновления «мастер» снова с удаленного. Ни одно из изменений, выполненных в ветке «FE_Changes», теперь не отображается в моей локальной ветке «master». Большое спасибо Тиму. – OverTheEdge

4

В дополнении к ответу Тима: Если вы хотите быть сброшены на конкретные фиксации:

git reflog 

покажет идентификаторы всех последних фиксаций

Затем вы можете выполнить:

git reset --hard <specific id> 

, чтобы сбросить эту конкретную фиксацию.

+0

спасибо запомнит «git reflog» в будущем. – OverTheEdge

Смежные вопросы