J'ai créé une branche d'un projet SVN appelée `` fonctionnalités '', et maintenant, chaque fois que j'essaie de mettre à jour ledit projet, elle apporte un dossier de fonctionnalités, qui contient une autre copie du projet de la branche. Existe-t-il un moyen de supprimer complètement la branche du référentiel afin que cela ne se produise plus?
91
Réponses:
Bien sûr:
svn rm
le dossier indésirable, et validez.Pour éviter cette situation à l'avenir, je suivrais la mise en page recommandée pour les projets SVN:
/someproject/trunk
dossier (ou tout simplement/trunk
si vous ne souhaitez mettre qu'un seul projet dans le référentiel)/someproject/branches/somebranch
/someproject/tags
Maintenant, lorsque vous extrayez une copie de travail, assurez-vous de vérifier uniquement
trunk
ou une branche individuelle. Ne vérifiez pas tout dans une énorme copie de travail contenant toutes les branches. 11 Sauf si vous savez ce que vous faites, auquel cas vous savez comment créer des copies de travail superficielles.
la source
En supposant que cette branche n'est pas un lien externe ou un lien symbolique, la suppression de la branche devrait être aussi simple que:
Si vous souhaitez faire cela dans le référentiel, puis mettez à jour pour le supprimer de votre copie de travail, vous pouvez faire quelque chose comme:
Puis exécutez:
la source
svn rm -m message http://...
et pasupdate
obligatoirePour ceux qui utilisent TortoiseSVN , vous pouvez le faire en utilisant le navigateur de référentiel (il est intitulé "Repo-browser" dans le menu contextuel.)
Recherchez le dossier de branche que vous souhaitez supprimer, cliquez dessus avec le bouton droit de la souris et sélectionnez «Supprimer».
Entrez votre message de validation et vous avez terminé.
la source
Vous pouvez également supprimer la branche directement sur la télécommande. Cela fait, la prochaine mise à jour le supprimera de votre copie de travail.
Le
^
est l'abréviation de l'URL de la télécommande, comme indiqué dans 'svn info'. Les guillemets doubles sont nécessaires sur la ligne de commande Windows, car il^
s'agit d'un caractère spécial.Cette commande fonctionnera également si vous n'avez jamais extrait la branche.
la source
Vous pouvez supprimer le dossier des fonctionnalités comme n'importe quel autre lors de votre paiement, puis valider la modification.
Pour éviter cela à l'avenir, je vous suggère de suivre les conventions de dénomination pour la mise en page SVN.
Soit donner à chaque projet un dossier trunk, branches, tags lors de leur création.
la source
À partir de la copie de travail:
svn rm branches/features
svn commit -m "delete stale feature branch"
la source
La commande pour supprimer une branche est la suivante:
svn delete -m "<votre message>" <URL de la branche>
Si vous ne souhaitez pas récupérer / récupérer l'intégralité du dépôt, exécutez la commande suivante sur votre terminal:
1) obtenir le chemin absolu du répertoire qui contiendra votre copie de travail
> pwd
2) Démarrer la vérification du code
svn> svn checkout <URL de la branche> <chemin absolu à partir du point 1>
Les étapes ci-dessus vous permettront d'obtenir les fichiers dans le dossier de branche et non dans le dossier entier.
la source