git archive
y para qué se usa?
git archive
genera un archivo comprimido que contiene una instantánea del proyecto en un momento específico. A diferencia de un clon estándar de Git, este archivo no incluye el historial del repositorio (.git
), solo el contenido de los archivos rastreados en la rama o el commit seleccionados. Esto lo hace ideal para compartir el código fuente o empaquetar versiones de lanzamiento de manera eficiente.
Puedes elegir qué rama, etiqueta o commit específico deseas exportar y en qué formato (por ejemplo, .zip
o .tar
). Además, es posible utilizar opciones para personalizar el contenido del archivo, como incluir solo ciertos directorios o excluir archivos no deseados.
git archive
git archive --format=zip -o proyecto.zip HEAD
Este comando crea un archivo llamado proyecto.zip
con el contenido de la rama actual (HEAD
).
git archive --format=tar -o rama-feature.tar nombre-de-la-rama
Esto genera un archivo TAR llamado rama-feature.tar
con el contenido de la rama nombre-de-la-rama
.
Si deseas empaquetar el proyecto en un estado etiquetado (por ejemplo, una versión estable):
git archive --format=zip -o version1.0.zip v1.0
Esto crea un archivo version1.0.zip
con el contenido de la etiqueta v1.0
.
Si necesitas crear un archivo con solo un subdirectorio específico:
git archive --format=zip -o subdirectorio.zip HEAD:subdirectorio/
Esto genera un archivo ZIP que contiene solo los archivos del subdirectorio subdirectorio/
en la rama actual.
Puedes excluir archivos o carpetas no deseadas utilizando la opción --exclude
:
git archive --format=tar --exclude=*.md -o sin-documentacion.tar HEAD
Esto crea un archivo sin-documentacion.tar
sin los archivos con extensión .md
.
Para más información sobre git archive
, consulta la documentación oficial de Git.
Jorge García
Fullstack developer