J'utilise ubuntu 12.04 TLS dans lequel j'ai un référentiel git dans un répertoire spécifique, ce que j'essaie est de prendre la sauvegarde planifiée du référentiel et de la placer dans un répertoire spécifique qui peut être envoyé par courrier.
Dans le processus, je fais connaissance pour trouver tous les dépôts git dans un répertoire spécifique en recherchant sur Google j'ai trouvé cette commande ci-dessous
find /home/mysys/D/ -name .git -type d -Prune
mais il contient le chemin
/home/mysys/D/testing/.git
qui répertorie tous les fichiers git associés dans le répertoire et cela fonctionne, mais ce dont j'ai besoin pour exécuter git bundle create directoryname.bundle --all pour le rendre plus automatisé dans lequel j'ai essayé ce qui suit
find /home/mysys/D/ -name .git -type d -Prune -exec git bundle create test.bundle --all {} \;
Le script bash ci-dessus renvoie
fatal: Invalid gitfile format: .git
Comment faire pour le rendre robuste.
Merci d'avance.
Vous voulez être in le répertoire contrôlé par git lorsque git bundle
est exécuté, utilisez donc find ... -execdir ... \;
find /home/mysys/D/ -type d -name .git -Prune -execdir git bundle create backup.bundle --all \;
Cela créera un backup.bundle dans tous ces répertoires. De là, vous pouvez les déplacer ou les traiter avec plus de scripts. Mais le côté groupé des choses est géré.