Nous avons accidentellement supprimé le dossier 'tags' de notre référentiel Subversion où nous n'avions l'intention de supprimer qu'une seule balise spécifique. Quelle est la manière la plus simple de récupérer le dossier «tags»?
Nous utilisons TortoiseSVN comme client et je pensais que lorsque je vais dans le navigateur de dépôt et afficher le journal, il y aura quelque chose comme "annuler les modifications de cette révision" de la même manière que ce que vous pouvez voir dans une boîte de dialogue similaire sur votre copie de travail. Mais il n'y a pas de telle commande là-bas ...
la source
pour les passionnés de ligne de commande:
recherchez d'abord le numéro de révision où votre suppression a eu lieu:
disons que vous trouvez que le répertoire a été supprimé dans la révision 999 (btw: vous trouverez peut-être plus facile de trouver le numéro de révision avec le navigateur svn repo)
copier le dossier de la révision moins 1
voilà vous avez terminé!
dans votre cas, cela pourrait être:
la source
La plupart de ces réponses fonctionneront dans une certaine mesure, mais la bonne réponse est celle de Daniel. Faites une fusion inversée. De cette façon, vous conservez l'historique des versions.
svn merge -r R1:R2
où R1 est la révision à laquelle vous vous trouvez et R2 est la révision qui contient le fichier / dossier supprimé.
la source
svn copy
.Vous devrez effectuer une fusion inversée .
Pour plus de détails sur la façon de le faire (et à peu près tout ce que vous voudriez ou devez faire avec SVN), le livre officiel est disponible en ligne .
la source
Suite à la réponse de Raudi qui a fonctionné pour moi après cette révision.
Certains clients svn peuvent avoir besoin du numéro de révision spécifié à l'aide du paramètre de révision -r au lieu d'utiliser @ après le dossier comme suit:
la source
-r <revision>
cela fonctionnera. Cependant, si vous essayez de restaurer le dossier directement, vous devrez utiliser@<revision>
. Sinon, il vous indiquera que le fichier n'a pas été trouvé.Allez à
Repository Browser
votrerepository
, faites un clic droit sur le dossier parent où se trouvait votre dossier supprimé . Maintenant,Show Log
du dossier parent, et sélectionnez la révision précédente où vous avez commis l'opération de suppression. Vous aurez une liste et faites un clic droit sur le dossier à partir des informations de révision et sélectionnezUpdate to this Revision
.Vous avez terminé
la source