web-dev-qa-db-fra.com

SVN annule la suppression avant la validation

Si vous supprimez un répertoire d'une copie de travail SVN, mais que vous n'avez pas encore validé, il n'est pas évident de savoir comment le récupérer. Google suggère même que "svn undo delete before commit" soit une requête courante lorsque vous tapez "svn undo d", mais les résultats de la recherche sont inutiles.

edit: je voudrais une solution qui fonctionne dans Subversion 1.4.4

131
LaC

svn revert deletedDirectory

Voici la documentation pour le svn revert commande.


MODIFIER

Si deletedDirectory a été supprimé en utilisant rmdir et non svn rm, vous devrez faire

svn update deletedDirectory

au lieu.

140
Michael Hackner

1) faire

svn revert . --recursive

2) analyser la sortie pour les erreurs comme

"Failed to revert 'dir1/dir2' -- try updating instead."

3) appelez svn up pour chacun des répertoires d'erreur:

svn up dir1/dir2
155
Denis Barmenkov

Ce qui a fonctionné pour moi, c'est

svn revert --depth infinity deletedDir
31
Jason

Effectuez une opération (récursive) d'annulation à partir du niveau supérieur au répertoire que vous avez supprimé.

4
Greg Hewgill

Pour en faire une ligne, vous pouvez essayer quelque chose comme:

svn status | cut -d ' ' -f 8 | xargs svn revert
3
Earle

La solution la plus simple que j'ai trouvée consistait à supprimer le répertoire parent de la copie de travail (avec rm -rf, pas svn delete), puis à exécuter svn update chez le grand-parent. Par exemple, si vous avez supprimé a/b/c, rm -rf a/b, cd a, svn up. Cela ramène tout. Bien entendu, ce n'est une bonne solution que si vous ne souhaitez pas conserver d'autres modifications non validées dans le répertoire parent.

Espérons que cette page sera en haut des résultats la prochaine fois que j'examinerai cette question sur Google. Ce serait encore mieux si quelqu'un proposait une méthode plus propre, bien sûr.

1
LaC

Vous pouvez supprimer le dossier et mettre à jour le répertoire parent avant de valider:

rm -r some_dir

svn update some_dir_parent

0
xinthose