web-dev-qa-db-fra.com

Meilleures pratiques pour utiliser git avec CVS

Quelles sont vos meilleures pratiques et astuces pour utiliser git pour interfacer avec un référentiel CVS?

48
skiphoppy

Je n'ai travaillé qu'avec les interactions Git-CVS pour faire une démonstration de Git pour un ami, mais c'était très simple.

  • Vous devez installer une copie actuelle de cvsps . Git cvsimport l'utilise pour accéder à l'historique CVS.
  • Nous avons constaté que, pour un grand projet, la configuration initiale était beaucoup plus rapide en prenant une copie complète du dépôt CVS sur votre ordinateur et en effectuant la git cvsimport localement:

    $ rsync rsync://yourprojecthost.com/cvsroot/yourproject/*  
    $ mkdir myproject.git  
    $ cd myproject.git  
    $ git cvsimport -p -x -v -d :local:/path/to/cvsroot/yourproject 
    

Notez que -x après -p est très important. Cela passe -x à cvsps. Pour plus d'informations, veuillez consulter la page de manuel cvsps .

11
Paul

J'ai écrit mes détails workflow pour CVS distant, Git local

8
Kristopher Johnson

Légèrement méta-réponse. Si vous êtes obligé d'utiliser git `` style guérilla '', c'est-à-dire que votre entreprise est bloquée à l'aide de cvs pour le contrôle de version et que vous utilisez git sur votre poste de travail pour vous faciliter la vie, vous pourriez envisager de faire quelque chose comme ça;

CVS=realCvsPath
# commit to the git first
if ($ARGV[0] && $ARGV[0] eq "commit")
{
system 'git commit -a';
}

# execute the appropriate cvs program
# ===================================
exec "$CVS", @ARGV

Appeler ce fichier 'cvs' et l'inclure le chemin avant la vraie commande CVS. Sinon, vous pouvez avoir des validations git plus anciennes que celles de cvs, ce qui n'est pas très utile ...

1
Chris Huang-Leaver