¿Hay alguna manera de tar directamente la última versión de una carpeta SVN sin los archivos ocultos SVN? Me gustaría crear un archivo tar sin los archivos SVN. Sé que puede obtener lo último con los archivos de seguimiento de SVN, pero ¿hay un revestimiento que envíe directamente la información a un archivo?
13
Respuestas:
La forma más fácil de hacer una copia de la última versión de un repositorio sin todas las carpetas .svn es usar el
svn export
comando.Así es como haría el archivo:
Donde URL es la URL de su repositorio svn y PATH es una ruta local adecuada para guardar una copia del repositorio exportado. No sé una forma de hacerlo más directamente que esto. Desafortunadamente, terminas con la copia exportada dando vueltas, por lo que es posible que solo quieras poner todo en un breve script bash que luego elimina los archivos temporales después.
EDITAR: Si bien este es el método más fácil y es el que usé también, sería cuidadoso. En mi investigación encontré este http://narfation.org/2009/01/08/creating-recreatable-tar-gz-from-svn que claramente nos dice el problema de la propiedad del grupo / usuario preservado que causa problemas cuando se implementa en otro sistema. He intentado este script con modificaciones propias para adaptarme a mi propósito y usted también podría beneficiarse.
fuente
Tal vez la versión 1.23 de tar le permite excluir todos los archivos de versiones de la línea de comandos, pero desafortunadamente no funciona en mi versión 1.20:
fuente
Vaya al directorio de trabajo de subversion (pago) y ejecute esto:
Si está utilizando utilidades GNU, también puede ejecutar:
Si es posible, recomendaría usar el formato ustar (
-H ustar
).fuente
Yo también veo:
Gracias alquitrán.
fuente
Si lo entiendo correctamente, ¿quieres tar los resultados de un pago de svn?
Entonces, en pseudocódigo, se vería así:
fuente
Esto está adaptado de una frase que escribí. Se supone que tiene un directorio ~ / tmp. Deberá cambiar las variables PROJ y URL en los primeros dos pasos. El resto debería funcionar.
Para copiar fácilmente:
Para una fácil visualización:
fuente
Este es mi esfuerzo de tratar de hacer un tarball determinista a partir de un repositorio SVN.
Requiere GNU tar 1.27 o posterior.
caracteristicas:
pax
encabezado extendidogit archive
lo haría.tar.gz
y.tar.xz
compresiones. Para gzip, es posible optimizar la compresión adicional mediante el usoadvdef
de AdvanceCOMP (advdef
usos zopfli biblioteca).Como ejemplo, utilizo el repositorio de subversión como fuente para el pago y la creación del tarball. Tenga en cuenta que esta no es la forma en que SVN empaqueta sus tarballs y no estoy relacionado con el desarrollo de SVN. Es solo un ejemplo , después de todo.
fuente