Supprimer.svn fichiers de tous les répertoires [dupliquer]
possibilité de dupliquer:
Comment supprimer le contrôle Subversion pour un dossier?
ligne de commande pour supprimer les fichiers et les répertoires correspondants récursivement
j'ai récemment converti mon dépôt cvs en svn en utilisant cvs2svn et j'ai récemment remarqué que chaque répertoire a un dossier caché appelé .svn. Ma construction actuelle script copie beaucoup de répertoires de mes répertoires de ressources suivies en versions et finit par copier le .fichiers svn. Est-ce qu'il y a de toute façon pour que svn n'inclue pas ces fichiers lors de ma sortie ou est-ce que j'ai besoin d'écrire un script pour supprimer tous ces fichiers .fichiers svn. Il ya beaucoup de fichiers qui ont ces cachés .SVN directories donc ce serait pénible à moins que je puisse écrire un script récursif pour le faire, mais je ne le fais pas si je peux le faire pour mon installateur windows. Est-il un moyen facile d'arrêter de svn de mettre ce caché répertoire partout dans mon projet?
12 réponses
vous pouvez faire une chose appelée une exportation SVN pour obtenir les fichiers sans la .svn répertoires
http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.export.html
dans votre cas, je ne suis pas sûr que vous vouliez les supprimer .svn répertoires. Mais si vous le faites, voici un bash one-liner pour le faire:
find . -name .svn -print0 | xargs -0 rm -r
i posté ceci hier ici , Mais voici encore parce que je l'ai en quelque sorte mis dans le mauvais fil de toute façon...
j'ai quelque chose qui devrait faire votre journée. La source originale est ici .
il s'agit d'une Extension Shell (parfaitement sûre) qui ajoutera" Delete SVN Folders " à votre menu de clic droit dans Windows. L'exécuter sur n'importe quel répertoire contenant ces satanés fichiers.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@="Delete SVN Folders"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""
pour faire cette partie de votre copie de script de construction qui appelle cmd.exe et de l'exécuter.
sur les systèmes Win64 / Win64, la commande suivante devrait faire l'affaire:
del /q /s .svn
ces dossiers sont nécessaires pour savoir comment subversion fonctionne avec une copie de travail (c'est-à-dire où vous avez effectué une vérification).
une option serait de faire une exportation vers un autre endroit. L'exportation n'aurait pas du .svn dossiers, et vous pouvez exécuter votre script. Documents: svn export , TortoiseSVN Export
une autre option serait de modifier votre script pour ignorer les répertoires cachés, ou construire un meilleur outil de construction.
et une version PowerShell
ls -Force -Recurse -Filter .svn | rm -Force -Recurse
svn export est ce que vous voulez. Il vous donnera une copie nette de l'arborescence de code sans les répertoires .svn
(notez que cette copie n'est pas sous contrôle de version et que les commandes svn ne fonctionneront pas une fois qu'elle sera exportée).
j'utilise cette méthode pour lancer du code sur des serveurs de production. Notre script de compilation prend une exportation de la branche de code, le tars et le gzips, le télécharge sur le bon serveur, et le décompresse.
si vous voulez faire cela avec ruby, il suffit de coller mon script dans le dossier racine que vous voulez supprimer récursivement: http://fabianosoriani.wordpress.com/2009/03/19/ruby-script-to-remove-svn-folders/
vous pouvez jeter un oeil à SVK
, qui est une couche au-dessus de Subversion. L'un des avantages est que les métadonnées du dépôt de votre copie de travail, qui sont normalement stockées dans le DIR .svn
, sont plutôt conservées dans un emplacement central unique, de sorte que vous n'avez pas le problème de dir .svn
caché. C'est assez sympa.
rechercher "/YourFolder" -nom ".svn" -exec rm -rad {} \;
vérifiez ceci lien
Je ne sais pas si je voudrais les supprimer, mais peut-être modifier votre script de construction pour ignorer les copier serait une bonne idée. J'utilise Ant pour compiler et construire ma guerre et il le fait en ignorant .svn DRS.