У меня есть следующий сценарий:
3 ветки:
- Мастер
- MyBranch отделился от мастера с целью разработки новой функции системы
- MyBranchLocal отделил MyBranch как мою локальную копию ветки
MyBranch переустанавливается и подталкивается другими разработчиками (которые работают над той же функцией, что и я).
Как владелец ветки MyBranch, я хочу, чтобы он синхронизировался с Master путем перезагрузки. Мне также необходимо объединить изменения, которые я делаю в MyBranchLocal с MyBranch.
Каков хороший способ сделать это?
Пара возможных сценариев, которые я пробовал до сих пор:
я.
1. Зафиксируйте изменение в MyBranchLocal
2. Восстановите MyBranch против Master
3. Восстановите MyBranchLocal против MyBranch
4. Слияние MyBranch с MyBranchLocal
II.
1. Зафиксируйте изменение в MyBranchLocal
2. Слияние MyBranch с MyBranchLocal
3. Восстановите MyBranch против Master
4. Rebase MyBranchLocal против MyBranch
III.
1. Зафиксируйте изменение в MyBranchLocal
2. Восстановите MyBranch против Master
3. Слияние MyBranch с MyBranchLocal
4. Rebase MyBranchLocal против MyBranch
Я уже знаю, что сценарий III, по-видимому, много вовлекает историю фиксации, потенциально дублируя коммиты.
Каков ваш опыт? Какие сценарии вы рекомендуете минимизировать слияние усилий и сохранить историю чистой?