Я знаю, что на этот вопрос был дан ответ некоторое время назад, но после прочтения я мог бы помочь добавить примеры конкретной команды git svn branch и связать ее с типичным рабочим процессом.
Как ответил Кч, используйте git svn branch
. Вот полный пример (обратите внимание на -n
для пробного запуска):
git svn branch -n -m "Branch for authentication bug" auth_bug
Если все идет хорошо, сервер отвечает следующим образом:
Копирование https://scm -server.com / svn / portal / trunk на r8914 в https://scm -server.com / svn / portal / филиалы / auth_bug ...
И без ключа -n
сервер, вероятно, добавляет что-то вроде:
Найдена возможная точка ветвления: https://scm -server.com / svn / portal / trunk => https://scm -server.com / portal / филиалы / auth_bug , 8914
Найден родительский филиал:
(Ссылки / пультов ДУ / auth_bug) * * тысяча тридцать два
d731b1fa028d30d685fe260f5bb912cbf59e1971
Следующий родитель с do_switch
Успешно подписан родитель r8915 = 6ed10c57afcec62e9077fbeed74a326eaa4863b8
* * +1039 (ссылки / пультов ДУ / auth_bug)
Самое приятное, теперь вы можете создать локальную ветку на основе вашей удаленной ветки, например:
git checkout -b local/auth_bug auth_bug
Что означает «проверить и создать локальную ветвь с именем auth_bug
и заставить ее следовать за удаленной ветвью (последний параметр) auth_bug
Проверьте, работает ли ваш локальный филиал в этом удаленном филиале, используя dcommit
с --dry-run
(-n
):
git svn dcommit -n
И сервер SVN должен ответить новым именем ветки:
Обязательство https://scm -server.com / svn / portal / branch / auth_bug ...