Vous avez besoin de convertir un tronc de projet dans une branche lors de l'utilisation CVS

StackOverflow https://stackoverflow.com/questions/907644

  •  05-09-2019
  •  | 
  •  

Question

Je suis la conversion d'un grand dépôt CVS multi-projet dans Subversion en utilisant cvs2svn. Cela fonctionne vraiment bien, mais il y a quelques projets de CVS qui devrait vraiment être branches d'autres projets.

En utilisant un fichier d'options que je suis en mesure de préciser que le tronc du projet « ShouldBeBranch » devrait être placé dans « / OtherProject / branches / ShouldBeBranch », mais je ne peux pas trouver un moyen d'éviter la création de répertoires Subversion pour les balises et les branches du projet ShouldBeBranch (qui sont vides, mais encore créés).

La seule option que je peux voir à l'heure actuelle est de supprimer les répertoires de Subversion une fois la conversion terminée, mais je me demandais si quelqu'un connaissait une façon que cela pourrait se faire dans le processus de conversion? Je suis aussi regardé le symbole laisse deviner fichier, mais avec 270 projets spécifiant un projet par numéro d'index semble trop difficile!

Merci, David

Était-ce utile?

La solution

On peut supposer que votre projet « ShouldBeBranch » lui-même a des branches et des étiquettes. Où voulez-vous ceux finissent par?

Si vous voulez que le tronc du projet « ShouldBeBranch » à inclure dans la conversion:

  • exclure tous les autres symboles du projet "ShouldBeBranch"
  • définir son trunk_path à un chemin dans l'autre projet
  • définir la branches_path et tags_path Aucun dans votre fichier d'options (ce qui les empêche d'être créé)

La partie de votre fichier d'options qui ajoute le projet « ShouldBeBranch » contiendra donc des lignes comme celle-ci:

run_options.add_project(
    # ...
    trunk_path='OtherProject/branches/ShouldBeBranch',
    branches_path=None,
    tags_path=None,
    # ...
    symbol_strategy_rules=[
        ExcludeRegexpStrategyRule(r'.*'),
        ],
    )

Autres conseils

Faire les fixups après l'importation semble que la meilleure chose pour moi. Si vous svn trunk move projet \ d'un projet à la branche \ quelque chose, Subversion va simplement suivre l'histoire.

décrit un moyen de faire renommer les chemins en utilisant un cycle de sauvegarde / chargement. De cette façon va changer l'histoire, de sorte que lorsque vous regardez l'historique des fichiers, il semble qu'ils ont toujours été dans la branche \ quelque chose.

Si vous deviez revenir à l'ancienne version, vous attendez pour être dans le projet \ tronc. Par conséquent, je ne pense pas que ce soit une bonne chose pour essayer de changer l'histoire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top