Comment pourrait-on supprimer tous les fichiers de sous-version du répertoire avec Powershell?
Réponses
Trop de publicités?Si vous voulez vraiment simplement supprimer les répertoires .svn, ceci pourrait vous aider:
gci c:\yourdirectory -include .svn -Recurse -Force |
Remove-Item -Recurse -Force
Edit: Ajouté -Force
param à gci
pour lister les répertoires cachés et raccourcir le code.
Keith a raison de dire que si vous devez éviter la suppression de fichiers avec l'extension .svn, vous devez filtrer les éléments à l'aide de ?
.
En supposant que vous ne voulez pas supprimer tous les fichiers qui pourraient aussi avoir .svn extension:
Get-ChildItem $path -r -include .svn -force | Where {$_.PSIsContainer} |
Remove-Item -r -force
EDIT:
Microsoft a répondu à la suggestion dans les commentaires ci-dessous que Keith ouvert sur MS Connecter! Comme de Powershell V3 vous pouvez se débarrasser de l'excès (très lent) pipe Where {$_.PSIsContainer}
et l'utilisation -directory
à la place:
gci $path -r -include .svn -force -directory | Remove-Item -r -force
PS v3 peut être téléchargé pour windows 7 Ici:
http://www.microsoft.com/en-us/download/details.aspx?id=34595
Pourquoi ne pas utiliser SVN Export pour obtenir une extraction propre sans répertoires .svn?
Modifier
Vous voudrez peut-être regarder la réponse ici: