Я работаю с небольшой командой, которая использует git для управления исходным кодом. В последнее время мы ведем ветки тем, чтобы отслеживать функции, а затем объединять их в мастер локально, а затем перенаправлять их в центральный репозиторий git на удаленном сервере. Это отлично работает, когда в мастере не было внесено никаких изменений: я создаю свою ветку темы, фиксирую ее, объединять в мастер и затем нажимать. Hooray.
Однако, если кто-то перешел к происхождению, прежде чем я это сделаю, мои коммиты не ускоряются. Таким образом происходит слияние. Это также происходит, когда ветвь темы должна объединяться с мастером локально, чтобы мои изменения работали с кодом на данный момент. Итак, в итоге мы скомбинируем слияние, и git log конкурирует с браслетом дружбы.
Таким образом, переборка является очевидным выбором. Я бы хотел:
- создать ветки тем, у которых есть несколько коммитов
- мастер проверки и pull (ускоренная перемотка вперед, потому что я не поручил мастеру)
- тема переадресации вступает в новый заголовок мастера
- переустанавливать темы против мастера (так что темы начинаются с главы мастера), доводя мастер до моей темы
Мой способ сделать это в настоящее время приведен ниже:
git checkout master
git rebase master topic_1
git rebase topic_1 topic_2
git checkout master
git rebase topic_2
git branch -d topic_1 topic_2
Есть ли более быстрый способ сделать это?