Estoy trabajando con un repository SVN que se presenta así:
$ SVN / [proyecto] / tronco $ SVN / [proyecto] / branches / [usuario] / [twig] $ SVN / [proyecto] / tags / releases / [tag]
Mi .git / config se ve así:
[svn-remote "svn"] url = $ SVN fetch = project / trunk: refs / remotes / trunk branches = project / branches / * / *: refs / remotos / *
Cuando miro la twig git -a, veo todas las twigs remotas. Digamos que quiero verificar uno, trabajar en él y luego confirmar los cambios. Esto es lo que trato de hacer:
git checkout -b comentarios erik / comentarios ... trabajo, cometer localmente ... git svn dcommit
Sin embargo, dCommit siempre empuja a $ SVN / project / trunk. git svn info
siempre informa la URL como $ SVN / project / trunk
He intentado usar –track, he intentado restablecer con –hard. Me he quedado sin ideas aquí. Sospecho que es mi [svn-remote], pero eso es sólo una corazonada.
Parece que esto hizo más o less lo que estoy buscando: clonar un repository de Svn no estándar con Git-Svn
Todavía tengo problemas con algunos cambios que no aparecen, pero eso es por otro día. ¡Gracias a todos!
¿La twig erik/comments
existe ya en SVN?
Trabajo de la siguiente manera:
git svn fetch #update any newly created branches git checkout davec/new-feature # on remote branch, git may warn you git checkout -b new-feature davec/new-feature # assumes this exists in SVN # hack # commit git svn dcommit
Me doy count de que git checkout -b local remote
es una versión de un paso de lo que hago en dos pasos, sin embargo, parece que funciona.
Otra opción es replace su configuration con su nombre de usuario, por ejemplo
branches = project/branches/erik/*:refs/remotes/*
Y entonces
git checkout new-feature # remote branch git checkout -b new-feature-branch # local
Puede probar svn2git y git2svn , ya que tienen en count los layouts de SVN no estándar.
Usan los parameters --tags
y --branches
de git svn
, e incluso si no usas los scripts que mencioné anteriormente, puedes usar esos parameters para get los datos en los lugares correctos en tu repository svn.