Annulation d'un commit dans TortoiseSVN


99

J'ai commis un tas de fichiers (des dizaines de fichiers dans différents dossiers) par accident. Quelle est la manière la plus simple, la plus propre (et la plus sûre!) D'annuler cette validation sans avoir à supprimer les fichiers de mon répertoire de travail?

Réponses:


151

Allez à Afficher l' écran du journal , sélectionnez la révision que vous souhaitez annuler, cliquez dessus avec le bouton droit de la souris et sélectionnez Annuler les modifications de cette révision , cela fera une fusion inverse .


8
C'est ce à quoi je m'attendais mais aucun signe dans la dernière version de Tortoise
Anthony Main

39
N'oubliez pas de vous engager par la suite, car il fusionne simplement localement.
pihentagy

5
Assurez-vous de mettre à jour votre copie de travail avant de faire cela, sinon rien ne se passe.
Florian Brucker


TortoiseSVN> Afficher le journal> <sélectionnez votre ancienne révision>> Revenir à cette révision tortoisesvn.net/docs/nightly/TortoiseSVN_en/...
Satyendra

15

Vous devrez peut-être utiliser la ligne de commande, mais vous pouvez utiliser la commande SVN merge et spécifier les révisions en sens inverse pour annuler efficacement une validation. En supposant que votre mauvais commit était r1123, vous feriez:

svn merge -r1123:1122 <url of your working copy>

Rien ne change quand je fais comme ceci: svn merge -r 1880: 1879 server / myproject / branches / problem42 J'ai essayé les deux avec un espace comme celui-ci "-r 1880: 1879" et sans espace comme celui-ci "-r1880: 1879". Si j'exécute "svn st" par la suite, rien n'a changé.
neoneye

2

Vous pouvez rétablir votre copie de travail à la révision antérieure à la validation. Une fois que vous avez rétabli votre copie de travail, validez simplement les modifications et vous annulerez efficacement la validation accidentelle.

Dans un cas comme le vôtre en particulier, je vérifierais probablement la révision que je voulais restaurer dans une nouvelle copie de travail, puis je commettrais la copie de travail dans la révision principale.


4
Cela ne vous dirait-il pas que votre révision est obsolète et vous oblige à mettre à jour avant de vous engager? Je pense que vous devez fusionner la révision précédente plutôt que simplement mettre à jour l'ancienne.
Mnebuerquo

De plus, cette stratégie suppose que le mauvais commit est le précédent. Vous voudrez peut-être annuler certaines modifications qui se sont produites il y a quelque temps, sans les annuler toutes.
jpaugh
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.