2012-05-02 3 views
8

Я сделал git pull и обнаружил, что один из моих файлов нужно объединить.Как спрятать несвязанный код в git?

Я действительно не хочу объединить этот файл прямо сейчас - у меня есть еще одна ветка, над которой мне нужно работать, и я вернусь к этой ветке позже, чтобы разрешить слияние.

Каков наилучший способ действий для меня «отменить» эту тягу? Или как я могу сдержать это слияние, пока я не буду готов справиться с этим? Что мне нужно сделать, чтобы иметь возможность изменять ветви, но затем вернуться в это незагруженное состояние в моем коде?

ответ

10

Это хороший пример того, почему я считаю, что сделать выборку вместо тяги - хорошая идея.

Что вы можете сделать, это просто сбросить свою ветку в предыдущем состоянии ..

git reset --hard HEAD~1 

или, если вы уже в середине слияния (разрешение конфликтов), просто прервать его ..

git merge --abort 

закончить свои изменения, а затем ...

git fetch 
...have a look at what's changed 
git merge origin/branch 

простой способ увидеть, что изменилось, чтобы сделать

git cherry branch origin/branch -v --abbrev=6 

Это даст вам список коммитов, которые находятся в происхождении отрасли, но не в вашей отрасли ... если вам нужны подробности того, что изменилось в этой фиксации затем

git show commit --name-status 
1

Если вы хотите сдуть изменения в текущем ГОЛОВЕ, git reset --hard - ваш билет. Это должно позволить вам обменивать ветви и возвращаться к этому, и повторить это слияние на более позднюю дату.

Если вы перегружаете, git rebase --abort также отменит операцию.

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