tipos tag repositorio origin example etiquetas eliminar crear git mirror

tag - Espejo un repositorio git tirando?



git push tag (3)

¿tienes acceso directo al servidor? entonces podrías simplemente rsync el directorio .git

Me pregunto si hay una manera fácil, es decir, como un simple trabajo cron, de extraer regularmente de un repositorio de git remoto a un espejo de solo lectura local para fines de copia de seguridad.

Lo ideal sería tirar todas las ramas y etiquetas, pero el maestro / tronco / cabeza sería suficiente.

Solo necesito una forma de asegurarme de que si el servidor master git muere, tenemos una ubicación de copia de seguridad a la que podríamos recurrir manualmente.


Como anotó Andrew, cada clon de un git repo es una copia de seguridad completa del repositorio. Dicho esto, si desea hacer una copia de seguridad automática de una máquina en particular, puede crear un repositorio simple en el servidor de copia de seguridad, ingresarlo con todas las ramas de las que desea hacer una copia de seguridad para llenarlo inicialmente. A continuación, configure un enlace de actualización de publicación en el repositorio "principal" para que, tan pronto como haya confirmados, continúe y los envíe al repositorio de copia de seguridad. No es necesario un trabajo cron o rsync, y es una copia casi en vivo.


Primero crea un espejo con

git clone --mirror [email protected]:repo.git

luego configura un trabajo cron como este:

*/1 * * * * gitbackup cd /backup/repo.git && git fetch -q --tags

Esto hará una copia de seguridad de los conjuntos de cambios cada minuto. Quizás quieras hacer esto con menos frecuencia.