Могу ли я удалить слияние / набор изменений из прошлого? - PullRequest
1 голос
/ 17 февраля 2012

Скажем, я использую git, создавая новую ветвь для каждой функции, а затем объединяюсь в master.

Таким образом, каждое объединение является очень узким в том смысле, что оно предназначено для конкретной функции.

После 10 таких коммитов могу ли я как-нибудь вернуться и удалить 5-е слияние?

Скажи, что это была функция, которую я не хотел.

Ответы [ 2 ]

1 голос
/ 17 февраля 2012

Мы делаем это постоянно.Вот как это делается: http://dymitruk.com/blog/2012/02/05/branch-per-feature/

Вы хотите сбросить мастер до 5-го слияния.Теперь объедините остальные.

Одно из предложений - использовать ветку кандидата на выпуск вместо основной.Используйте мастер, чтобы отметить то, что было выпущено.

0 голосов
/ 17 февраля 2012

Вы должны быть в состоянии сделать это:

git rebase -p --onto bad-merge^ bad-merge master

Это отменяет все после нежелательного слияния с коммитом перед ним, с сохранением -p слияний.

(Обычно вы удаляете прошлый коммит, используя git rebase -i, но, к сожалению, плохо работает с -p; вы не можете удалить коммит слияния. Это отмечено в разделе BUGS на странице руководства.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...