#git #git-svn
#git #git-svn
Вопрос:
Я с git-svn поверх клиентской ветви SVN («магистраль»)
магистраль -> мастер -> функция
Упрощенный рабочий процесс:
master: git-svn rebase
git rebase master feature [working here...]
git checkout master
git merge feature
git svn-dcommit
Теперь заказчик хотел бы, чтобы я работал над до сих пор не существующей веткой svn (‘feature_svn’). «функция» сильно продвинулась вперед и некоторое время не использовалась. Клиент, скорее всего, на данный момент избежал бы этих разработок в своей магистрали.
Каков наилучший способ переноса моей работы? Могу ли я просто отслеживать ‘feature_svn’ с помощью новой ветки git (скажем, ‘track_feature_svn’), объединить / перебазировать (?) ‘feature’ в ‘track_feature_svn’ и зафиксировать результат в ‘feature_svn’. Есть ли какие-либо возможные подводные камни?
Ответ №1:
Да, вы можете.
git checkout trunk
#will create branch in svn and git, based on currently tracked svn branch (trunk I assume)
git svn branch feature_svn
git rebase feature_svn feature
git svn dcommit
Вы можете работать с feature_svn
веткой так же, как вы работали с магистралью. Не ожидал бы никаких серьезных проблем, если бы вы предпочитали перебазирование слияниям.