mac how from duplicate git mirror git-clone git-remote git-fetch

from - how to clone github repository windows



Cómo actualizar un clon git--mirror? (3)

En cuanto a commits, refs, branches y " etcétera ", la respuesta de Magnus simplemente funciona (actualización remota git).

Pero lamentablemente no hay forma de clonar / duplicar / actualizar los ganchos , como yo quería ...

He encontrado este hilo muy interesante acerca de la clonación / reflejo de los ganchos:

http://kerneltrap.org/mailarchive/git/2007/8/28/256180/thread

He aprendido:

  • Los "ganchos" no se consideran parte del contenido del repositorio.

  • Hay más datos, como la carpeta ".git / description", que no se clona, ​​al igual que los ganchos.

  • Los ganchos predeterminados que aparecen en el directorio "hooks" provienen de TEMPLATE_DIR

  • Existe esta interesante función de "plantilla" en git.

Por lo tanto, puedo ignorar este "clonar los enganches", o buscar una estrategia de rsync , dados los propósitos de mi espejo (copia de seguridad + fuente para otros clones, solamente).

Bueno ... Me olvidaré de la clonación de ganchos, y me atengo a la forma de "actualización remota git".

  • Sehe acaba de señalar que no solo los "ganchos" no son gestionados por el proceso de clonación / actualización, sino que también se guardan, revisan, etc. Por lo tanto, para una copia de seguridad estricta, rsync o equivalente realmente sería el camino a seguir. Como esto no es realmente necesario en mi caso (me puedo permitir no tener ganchos, escondites, etc.), como dije, me atendré a la "actualización remota".

¡Gracias! Mejorado un poco mi propio "git-fu" ... :-)

He creado un repositorio git para duplicar un sitio en vivo (que es un repositorio git no simple):

git clone --mirror ssh://[email protected]/path/to/repo

Ahora, para mantener este duplicado duplicado actualizado con todos los cambios desde su origen remoto, ¿qué comando o comandos debo usar?

Me gustaría mantener todo actualizado: commits, refs, hooks, branches, etc.

¡Gracias!


Este es el comando que necesita ejecutar en el espejo:

git remote update