347 votes

Comment rétablir un commit svn

J'ai trouvé plusieurs exemples de la façon de retourner un svn commit comme

 svn merge -r [current_version]:[previous_version] [repository_url]
 

ou

 svn merge -c -[R] .
 

mais aucun d'eux ne semble fonctionner. J'ai essayé ces commandes et vérifié les fichiers modifiés manuellement.

Mes questions: Comment annuler un commit avec le numéro 1944? Comment vérifier que le retour a été effectué (sans regarder dans le fichier actuel les modifications ont été annulées)?

489voto

Lazy Badger Points 30623

Les deux exemples doivent fonctionner, mais

svn merge -r UPREV:LOWREV . Annuler la plage

svn merge -c -REV . défaire la résivision unique

dans cette syntaxe - si dir actuel est WC et (comme doit le faire après chaque fusion), vous allez valider les résultats

Voulez-vous voir les journaux?

142voto

dodgy_coder Points 2778

Si vous utilisez le client SVN Tortoise, vous pouvez facilement le faire via la boîte de dialogue Afficher le journal.

http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-howto-rollback.html

72voto

onon15 Points 2123

svn merge -r 1944:1943 devrait annuler les modifications de r1944 dans votre copie de travail. Vous pouvez ensuite examiner les modifications apportées à votre copie de travail (avec diff), mais vous devrez vous engager pour appliquer le retour dans le référentiel.

28voto

Jakub Zaverka Points 5909

Il est impossible de "dégager" une révision, mais vous pouvez rétablir votre copie de travail en version 1943 et la valider en tant que version 1945. Les versions 1943 et 1945 seront identiques, annulant ainsi les modifications.

5voto

jmullee Points 69
F=code.c
REV=123
svn diff -c $REV $F | patch -R -p0 \
    && svn commit -m "undid rev $REV" $F

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X