2012-02-08 2 views
3

Если у меня есть множество ветви с общим предком совершить a, есть простой способ перебазирования все из них на совершение b (где общий предок a и b может быть каким-то третье совершить c)?Git - перебазирования набора ветвей

+0

Вы пытаетесь перебазироваться совершающее с момента 'Ā' на каждой ветви, или совершающее с момента' c' на каждой ветке? –

+0

Записывается с 'c' – rampion

+0

См. Также [как я бы переустановил всю предысторию - несколько ветвей с некоторыми связями между ними в результате объединения] (http://stackoverflow.com/a/9706495/94687). Неприятной частью этого решения является необходимость сброса ссылок на ветку темы на новые переустановленные фиксации впоследствии. –

ответ

3

Да. Просто переубедите их всех.

Если вы ожидаете повторных конфликтов, включите git-rerere, который записывает ваши разрешения конфликтов и может автоматически применять одно и то же разрешение, когда слияние сталкивается с теми же конфликтами в другом (повторном) объединении.

Или вы могли бы,

  1. изолят совершить a в ветке

    git checkout -b temporary <commita> 
    
  2. Rebase в temporary ветвь на совершение b.

  3. перебазировать все «связанные» ветви на результирующей ветви temporary

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