Ma compagnie dispose d'une grande base de code de base à Surround SCM, qui a été migrée de SourceSafe il y a quelques années. Nous cherchons à déménager à quelque chose de plus adapté à nos besoins, mais que notre histoire surround se révèle être un défi. P>
googling pour importateurs git, j'ai trouvé Un bon tutoriel sur les importateurs personnalisés . Il semble également y avoir un soutien pour SVN, Perforce, et beaucoup d'autres, mais pas d'entourage. P>
Serait-il préférable de simplement prendre un instantané et de commencer un nouveau repo git? Ou vaut-il la peine d'écrire un script pour avoir plus de 15 ans d'historique de code? P>
3 Réponses :
Dans ce type de scénario, un script peut être écrit, mais pas pour obtenir tous em> l'histoire. p>
Je recommanderais uniquement l'importation: p>
Toutefois, la migration vers GIT nécessite également une œuvre afin d'identifier des modules ou des applications dans votre référentiel surround centralisé. Voir: P>
Essayer d'importer toutes ces données dans Un référentiel GIT EM> serait une erreur, sauf si c'est un système géant qui ne peut pas être développé en pièces indépendamment une autre (comme le noyau Linux). P>
Surround SCM a un SDK. J'ai utilisé cela pour amener un référentiel de CVS à surrounder. Des années plus tard, une équipe envisageait de passer à Svn et a demandé si je pouvais migrer le référentiel. Je suis proposé une solution, qui consistait à marcher sur le référentiel surround et à créer une base de données intermédiaire dans la mémoire, puis à le traiter. Pour que les dates avaient raison, je réinitialiserais l'horloge de l'ordinateur. Avant de pouvoir implémenter pleinement la solution, nous avons décidé de conserver une licence flottante pour cette équipe lorsqu'elle avait besoin de regarder l'histoire et de leur planifier de repenser l'ensemble de leurs projets. (En tant que FYI, deux ans et cette équipe utilise toujours surround.) P>
me trouver dans ce scénario exact, je me suis prise sur moi-même d'écrire un tel importateur personnalisé: export- surround-to-git p>
Cette méthode est capable de préserver l'historique complet, les horodatages, les auteurs, les commentaires, les succursales, les instantanés, etc. p>
Ce script a été testé dans un nombre limité de scénarios et s'est avéré fructueux jusqu'à présent. Tout en cours de travail, cela peut être ce que vous recherchez. C'est open-source - alors n'hésitez pas à apporter des améliorations au script sur votre propre! P>
Ce script ne fonctionne pas très bien sur Windows, mais je vais envoyer des corrections (après convertir un énorme repo) en deux semaines. En ce moment, c'est un code très désordonné, donc je dois le nettoyer. Au fait - c'est ma fourchette (ou une sorte de ma fourchette) Github.com/ xingem / export-surround-to-git.git
Le lien vers les importateurs personnalisés est mort. Pourrait être probablement remplacé par git-scm.com/book/fr/v1/... .
Agréable. Édité pour corriger. Merci!