2008-12-02 7 views
1

J'ai un référentiel SVN sur mon PC principal, auquel seul j'ai accès. J'ai aussi un ordinateur portable, et je ne veux pas perdre la fonctionnalité SVN quand je ne suis pas connecté à mon PC. Donc pour le moment, je copie simplement tout le Repository sur l'ordinateur portable et le recopie."Copier" une arborescence de SVN dans un référentiel local et la fusionner par la suite

Cela fonctionne bien sûr (je suis le seul développeur, donc je n'ai pas accès au repo quand je ne suis pas de toute façon), mais c'est un peu fastidieux à faire à chaque fois.

Je me demande s'il existe un moyen de vérifier un répertoire à partir de SVN et de le stocker dans un (nouveau) référentiel sur l'ordinateur portable, de travailler dessus, puis de fusionner ce référentiel avec le référentiel principal plus tard. (Oui, je sais que ce serait un bon cas pour les systèmes distribués à la git ou Mercurial, mais je ne veux pas perdre VisualSVN/TortoiseSVN).

Je ne suis pas vraiment sûr de ce que je cherche, mais je suppose que je suis à la recherche de branchement et de fusion entre deux référentiels: Brancher l'arbre de repo1 en repo2, puis le fusionner. La mise en garde ici: je voudrais garder l'histoire de repo2. Donc, si j'ai fait 10 commits contre le repo2, j'aimerais transférer ces 10 commits dans le repo1, de sorte que je puisse toujours revenir en arrière.

Est-ce encore possible, ou est-il préférable de toujours copier le référentiel entier à chaque fois? (Il se trouve dans une VM de toute façon, ce qui signifie que je copie la VM entière à chaque fois).

+0

+1 ayant exactement le même problème –

Répondre

1

SVK

svk est un système de contrôle de version décentralisé construit avec le système de fichiers Subversion robuste. Il prend en charge la mise en miroir du référentiel, l'opération déconnectée, la fusion sensible à l'historique et s'intègre à d'autres systèmes de contrôle de version, ainsi qu'aux outils de fusion visuelle les plus courants.

1

Au lieu de copier le référentiel entier à chaque fois, je recommande d'utiliser rsync. Si vous utilisez le backend fsfs de svn (ce que vous devriez faire), alors il ne synchronisera que les nouvelles révisions, et le fera rapidement. Bien sûr, les checkins simultanés ne seraient pas possibles (mais je comprends qu'ils ne sont pas nécessaires non plus).

Questions connexes