J'utilise git comme outil de sauvegarde et 'profil itinérant' pour mon répertoire $ HOME entre portable et desktop.Git ignore les répertoires .git dans les sous-répertoires
Mon problème est que sous mon $ HOME j'ai un répertoire de développement avec plusieurs projets git sur lesquels je travaille. Git ne me permettra pas d'ajouter les dossiers de sous-répertoires .git. Donc, pour m'engager dans ces projets, je dois pousser les changements dans mon repo git $ HOME, tirer sur un ordinateur portable (où ils ont été créés et .git dir exsits) et valider. J'ai lu des sous-modules, mais ce n'est pas vraiment ce que je veux. Je veux juste que les dossiers enfants .git soient traités comme n'importe quel ancien répertoire afin que je puisse les déplacer et les sauvegarder.
Quelqu'un at-il fait cela ou avoir une idée de comment je le ferais?
imho, c'est probablement le mauvais outil pour le travail. Si vous voulez synchroniser votre ordinateur portable et votre bureau, vous devriez peut-être regarder à l'unisson. Si vous voulez mettre à jour tout le travail que vous faites dans $ HOME, l'option la plus simple est rsyncs, mais bien sûr ce n'est pas incrémentiel. vous auriez besoin d'un produit de sauvegarde incrémentielle, ou vous pouvez pirater quelque chose en utilisant rsync et git –
@Igor: Je suis d'accord, généralement. Vous n'avez pas forcément besoin de rsync les repos git, vous pouvez facilement écrire un moyen de les pousser/tirer/les mettre à jour en masse, même si vous décidez que les sous-modules ne sont pas les bons (bien qu'ils puissent probablement fonctionner objectif). – Cascabel
rsnapshot peut faire la chose incrémentale. Honnêtement, sous-modules est ce que vous devriez utiliser. Je voudrais juste écrire un script pour transférer tous les repos. pourquoi voulez-vous mettre à jour les objets git de toute façon? juste pour faciliter le transfert? utiliser autre chose. aussi ce n'est pas une question SO, il devrait être sur SUPERUSER. pourquoi les gens posent toutes ces questions de non-programmation sur le SO. – xenoterracide