2015-11-03 3 views
1

У меня есть определенные слияния на моей главной ветке, когда я обновляю свое репо из центрального хранилища. Теперь, когда я делаю новую ветку от мастера, эти коммиты появляются в запросах на тягу, которые очень раздражают. Как я могу удалить эти коммиты и избежать их в будущем при обновлении? Я знаю, что эти вопросы заданы, но пока ничего не сработало.Как удалить транзакции слияния

+2

В будущем; не тяните. Вместо этого выберите и переустановите. (Или вытащить, но с '--rebase'.) – Biffen

+0

Использовать' merge --no-ff'? – mic4ael

+1

@ mic4ael Не будет ли это * создавать * слияние? – Biffen

ответ

2

Проблема заключается в том, что ваша главная ветка содержит коммиты (в частности, слияния), которые не являются частью восходящего репозитория. Из-за этого любые филиалы, которые вы используете в этой мастер-ветке, также будут иметь эти коммиты, поэтому любой PR, требующий слияния одной из этих ветвей с ведущим мастером, также будет включать их.

Чтобы исправить это, вы можете переустановить свой локальный мастер на мастер из восходящего репозитория. По умолчанию git rebase игнорирует комманды слияния, поэтому это должно устранить любые излишние фиксации из истории филиала. Если у вас есть вверх по течению хранилище установить в качестве удаленного имени upstream, вы можете сделать это так:

git fetch upstream 
git checkout master 
git rebase upstream/master 
git push -f origin master 

Или поочередно, если вы уверены, что ваш мастер ветвь не содержит каких-либо изменений, которые вы хотите сохранить, которые Арен» т уже в главной ветви вверх по течению репозитория (который, на основании того, что вы заявили в этом вопросе, и должно быть), то можно просто сбросить его, чтобы соответствовать потоку мастера:

git fetch upstream 
git checkout master 
git reset --hard upstream/master 
git push -f origin master 

После этого делается , переустановите свои ветви функций на новую главную ветвь:

git checkout feature 
git rebase master 
git push -f origin feature 

Это должно устранить дополнительные слияния, связанные с вашими запросами на тягу.

+0

Большое спасибо. Это решение сработало. –

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