Question

Je créé une branche d'un projet SVN appelé « caractéristiques », et maintenant chaque fois que je tente de mettre à jour dit projet, il apporte avec lui un dossier comporte, qui contient une copie du projet de la branche. Y at-il un moyen de supprimer la branche du référentiel complètement de sorte que cela ne se produise plus?

Était-ce utile?

La solution

Bien sûr. svn rm le dossier non désiré, et engager

Pour éviter cette situation à l'avenir, je suivrais le mise en page recommandée pour les projets svn:

  • Mettez votre code dans la dossier /someproject/trunk (ou tout simplement /trunk si vous voulez mettre un seul projet dans le référentiel)
  • branches créées en tant que /someproject/branches/somebranch
  • Mettre les balises sous /someproject/tags

Maintenant, lorsque vous extrayez une copie de travail, assurez-vous de vérifier que trunk ou une branche individuelle. Ne pas tout vérifier dans un travail énorme copie contenant toutes les branches. 1

1 Sauf si vous savez ce que vous faites, dans ce cas, vous savez comment créer des copies de travail de faible profondeur.

Autres conseils

En supposant que cette branche n'est pas un externe ou un lien symbolique, en supprimant la branche doit être aussi simple que:

svn rm branches/< mybranch >

svn ci -m "message"

Si vous souhaitez faire dans le référentiel puis mettre à jour pour le supprimer de votre copie de travail, vous pouvez faire quelque chose comme:

svn rm http://< myurl >/< myrepo >/branches/< mybranch >

Ensuite, exécutez:

svn update

Pour ceux qui utilisent TortoiseSVN , vous pouvez accomplir ceci en utilisant le navigateur de référentiel (il est marqué dans le menu contextuel « Repo-navigateur ».)

menu contextuel

Trouvez la branche dossier que vous souhaitez supprimer, faites un clic droit et sélectionnez « Supprimer ».

la suppression du dossier

Entrez votre message de validation, et vous avez terminé.

commettre

Vous pouvez également supprimer la branche sur la télécommande directement. Après avoir fait cela, la prochaine mise à jour le supprimer de votre copie de travail.

svn rm "^/reponame/branches/name_of_branch" -m "cleaning up old branch name_of_branch"

Le ^ est l'abréviation de l'URL de la télécommande, comme on le voit dans 'information svn. Les guillemets doubles sont nécessaires sur la ligne de commande Windows, car ^ est un caractère spécial.

Cette commande fonctionne aussi si vous avez jamais vérifié la branche.

Vous pouvez supprimer les fonctionnalités dossier comme tout autre dans votre caisse puis valider la modification.

Pour éviter cela à l'avenir, je vous suggère de suivre les conventions de nommage pour la mise en page SVN.

Soit donner à chaque projet un tronc, les branches, les balises dossier lors de leur création.

svn
+ project1
  + trunk
    + src
    + etc...
  + branches
    + features
      + src
      + etc...
  + tags
+ project2
  + trunk
  + branches
  + tags

A partir de la copie de travail:

svn rm branches/features
svn commit -m "delete stale feature branch"

pour supprimer une branche est la suivante:

svn suppression -m ""

Si vous souhaitez ne pas chercher / checkout le repo entier, exécutez la commande suivante sur votre terminal:

1) obtenir le chemin absolu du répertoire qui contiendra votre copie de travail
> PWD
2) la caisse de code svn Démarrer
> Svn caisse

Les étapes ci-dessus vous obtiendrez les fichiers dans le dossier de la branche et non le dossier entier.

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