Sei que esta pergunta foi respondida há um tempo atrás, mas depois de lê-la, talvez seja útil adicionar exemplos do comando git svn branch específico e relacioná-lo a um fluxo de trabalho típico.
Como kch respondeu, use git svn branch
. Aqui está um exemplo completo (observe o -n
teste de execução a seco):
git svn branch -n -m "Branch for authentication bug" auth_bug
Se isso der certo, o servidor responde com uma resposta como esta:
Copiando https://scm-server.com/svn/portal/trunk em r8914 para https://scm-server.com/svn/portal/branches/auth_bug ...
E sem a -n
opção, o servidor provavelmente adiciona algo como:
Ponto de ramificação possível encontrado: https://scm-server.com/svn/portal/trunk => https://scm-server.com/portal/branches/auth_bug , 8914
Pai principal encontrado: (refs / remotes / auth_bug)
d731b1fa028d30d685fe260f5bb912cbf59e1971
Seguindo pai com do_switch
Pai seguido seguido com sucesso r8915 = 6ed10c57afcec62e9077fbeed74a326eaa4863b8
(refs / remotes / auth_bug)
A melhor parte é que agora você pode criar uma filial local com base na sua filial remota da seguinte forma:
git checkout -b local/auth_bug auth_bug
O que significa "faça check-out e crie uma filial local nomeada auth_bug
e faça com que ela siga a filial remota (último parâmetro)auth_bug
Teste se sua filial local funciona nessa filial remota usando dcommit
with --dry-run
( -n
):
git svn dcommit -n
E o servidor SVN deve responder com o novo nome da filial:
Confirmando https://scm-server.com/svn/portal/branches/auth_bug ...