Je prévois de passer de SVN à git. Avec svn, je copie simplement mon dossier de dépôt lorsque je veux le sauvegarder. Cependant git n'en a pas alors que dois-je faire?
Dois-je créer un clone sur un lecteur séparé et mettre à jour en tirant de mon projet? Ensuite, je peux graver / archiver ce dossier et il aura toute l'histoire?
C'est probablement évident mais je veux m'assurer quand il s'agit de sauvegardes. Je fais toujours semblant qu'il existe un référentiel racine.
Réponses:
Vous venez de le copier. git n'utiliser un dossier de prise en pension, il est juste caché des vues normales du répertoire. (Le dossier est nommé sur les systèmes * nix, il n'apparaît donc que si vous utilisez . Je suppose qu'il définit l'attribut "caché" dans Windows, mais je n'ai jamais utilisé git dans un environnement Windows, donc je ne suis pas certain de comment cela est géré là-bas.)
.git
ls -a
la source
.git
, avec l'attribut "Caché"..git
répertoire contient l' intégralité de l' état du référentiel, y compris l'historique. (C'est la partie "distribuée".)La réponse akira est correcte, mais vous pouvez ajouter --mirror pour créer un dépôt nu (pour une sauvegarde légèrement plus petite).
Nous utilisons la stratégie suivante (presque exactement):
Ensuite, pour récupérer à partir de votre sauvegarde:
la source
J'utilise git bundle . Pour créer un fichier de copie (un fichier de sauvegarde), exécutez:
Pour restaurer le référentiel avec le maître de branche, clonez simplement le fichier backup.bundle:
la source
créer un nouveau clone ailleurs:
btw, git a un dossier repo, vous pouvez le localiser dans votre copie de travail sous le sous-répertoire
.git
. chaque copie de travail a ce "dossier repo".la source