Busque el repositorio GIT en un directorio específico y ejecute el comando git bundle

Busque el repositorio GIT en un directorio específico y ejecute el comando git bundle

Estoy usando ubuntu 12.04 TLS en el que tengo un repositorio git en un directorio específico, lo que estoy intentando es realizar la copia de seguridad programada del repositorio y colocarla en un directorio específico que pueda enviarse por correo.

En el proceso, aprendí a encontrar todo el repositorio de git en un directorio específico buscando en Google y encontré el siguiente comando

find /home/mysys/D/ -name .git -type d -prune

pero contiene el camino como

/home/mysys/D/testing/.git

que enumera todos los archivos git asociados en el directorio y está funcionando, pero lo que necesito para ejecutar git bundle create nombredirectorio.bundle --todo para hacerlo más automatizado en el que probé lo siguiente

find /home/mysys/D/ -name .git -type d -prune -exec git bundle create test.bundle --all {} \;

El script bash anterior regresa

fatal: Invalid gitfile format: .git

Cómo hacer esto para que funcione de manera robusta.

Gracias de antemano.

Respuesta1

Tu quieres serenel directorio controlado por git cuando git bundlese ejecuta, así que usefind ... -execdir ... \;

find /home/mysys/D/ -type d -name .git -prune -execdir git bundle create backup.bundle --all \;

Eso creará un paquete de copia de seguridad en todos estos directorios. Desde allí puedes moverlos o procesarlos con más secuencias de comandos. Pero el lado de la agrupación ya se maneja.

información relacionada