Vincent Danen menciona the -A option when using git svn:
Así, utilizando ~/git como un directorio de nivel superior para los repositorios Git [...]
crear un archivo authors.txt.
Este archivo asignará los nombres de los committers de Subversion a los autores de Git, lo que dará como resultado un historial correcto del repositorio de Subversion importado.
Para proyectos con un pequeño número de committers, esto es bastante fácil. Para proyectos más grandes con muchos committers, esto puede tomar algo de tiempo. La sintaxis del archivo sería:
user = Joe User <[email protected]>
vdanen = Vincent Danen <[email protected]>
El nombre corto es el nombre del confirmador para Subversion mientras que la forma larga es el nombre y dirección de correo electrónico completa del usuario, tal como se utiliza por Git.
El último paso es clonar el repositorio de Subversion, que crea un repositorio de Git local basado en él. Asumiendo que su repositorio utiliza los estándares de/tronco,/etiquetas y/ramas, uso:
# git svn clone --no-metadata -A authors.txt -t tags -b branches -T trunk https://svn.example.com/svn/repo
-A<filename>
--authors-file=<filename>
sintaxis es compatible con el archivo utilizado por Git-cvsimport:
loginname = Joe User <[email protected]>
Si se especifica esta opción y git-svn
encuentra un nombre de commiter SVN que no existe en los autores -file, git-svn abortará la operación.
El usuario tendrá que agregar la entrada correspondiente.
Al volver a ejecutar el comando git-svn
anterior después de que se modifique el archivo de autores, debe continuar la operación.
config key: svn.authorsfile
Esto debería funcionar para todas las git-svn
comandos, incluyendo git-svn dcommit
(cuando se presiona - SVN) (Nota: No he probado directamente sin embargo).
Mohammed Gamal informa (en los comentarios) funciona, pero sin la opción --no-metadata
.
Eso también funciona en la dirección git-> svn, como lo pidió OP? –
@Christoph: por cierto, * haz * un espejo SVN de un repositorio de Git (http://stackoverflow.com/questions/570945/git-clone-of-git-svn-tree/571084#571084). ¿Alguna vez tuvo que usar la opción --authors-file? – VonC
Su solución funciona, pero sin --no-metadata switch –