2009-07-08 2 views
37

supposons que vous mettez à jour votre code à la révision 10 qui est cassé. Vous voulez revenir à la révision 9, travailler sur le code et attendre que quelqu'un corrige la construction.Retour à la version dans Subversion

Comment?

svn merge -rHEAD:9 . 

ne fonctionnera pas. Tu sais pourquoi ;).

Merci d'avance, Etam.

Répondre

96

Si vous voulez simplement revenir à une autre révision, update est ce que vous cherchez:

svn update -r 9 

Vous pouvez travailler sur le code, mais vous ne pouvez pas valider les modifications. Eh bien, si la révision 10 ne changeait pas le même fichier que vous avez changé, vous pourriez commettre mais c'est mieux si vous attendez que la révision 10 soit corrigée. Au lieu de cela, si vous voulez continuer à travailler sur le code, vous pouvez créer une branche à partir de la révision 9, aller de l'avant dans la branche et réintégrer la branche dans le tronc lorsque la révision 10 est corrigée.

+4

Cela fait 5 ans que vous m'avez aidé. Merci! –

2

Si vous ne voulez vraiment pas revenir à l'aide de la commande merge, vous pouvez toujours vérifier une version précédente en transmettant l'option -r à l'extraction.

svn checkout http://yoursite/svn -r 9 

Quand quelqu'un fixe la révision 10 et engage 11, vous pouvez mettre à jour normalement et fusionner vos modifications de votre copie locale de r9. Il suffit de résoudre les conflits normalement puis de valider 12.

2

Le mieux est de créer une branche à partir de la révision 9 et de continuer à travailler sur cette branche. Lorsque vous êtes sûr que le tronc est prêt pour vos modifications (c'est-à-dire qu'il est réparé), fusionnez votre branche.

1

svn update -r numéro de version, cette méthode fonctionne bien pour moi, car je devais revenir en arrière . mais n'oubliez pas de vous engager à faire des changements pour être sûr. ok