web-dev-qa-db-fra.com

TortoiseSVN - "annuler les modifications de cette révision" vs "revenir à cette révision"

Le lien:

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

décrit deux façons de restaurer un répertoire SVN après une validation erronée. Quelle est la différence entre les deux options

Revert changes from this revision
Revert to this revision

À titre de test, j'ai ajouté un fichier, annulé en utilisant "Annuler les modifications de cette révision" et j'ai fait le même processus pour "Revenir à cette révision", et il n'y a aucune différence avec l'état du journal SVN.

Suis-je en train de manquer quelque chose?

44
Tahir Hassan

Supposons que vous ayez ces N validations successives: 1, 2, 3 et 4.

Si vous sélectionnez le commit 2 et choisissez "Revenir à cette révision", votre copie de travail contiendra les modifications apportées par les commits 1 et 2. Les commits 3 et 4 seront "annulés".

Si vous sélectionnez le commit 2 et choisissez "Annuler les modifications de cette révision", votre copie de travail contiendra les changements apportés par les commits 1, 3 et 4. Le commit 2 sera "annulé", ou plutôt lu en sens inverse en haut de commit 4: si une ligne a été ajoutée, elle sera supprimée. Si une ligne a été supprimée, elle sera lue à nouveau.

75
JB Nizet

Pour un single et latest commit, il y a pas de différence.

La différence survient lorsque vous souhaitez utiliser une révision quelque part au milieu de votre liste de modifications.

Revert to this revision reviendra toutes les validations de la tête jusqu'à cette révision.
Revert changes from this revision reviendra niquement la validation de cette révision particulière.

11
Slav

Si vous voulez que tout votre code source local revienne à la façon dont les choses étaient lors d'une révision précédente, choisissez "Revenir à cette révision". Si, au lieu de cela, vous voulez garder votre source locale à jour, mais annuler certaines modifications qui ont été apportées il y a plusieurs révisions, vous ne voulez pas que toute votre source locale revienne, vous voulez simplement annuler cette modification que vous avez apportée. il y a quelque temps. "Annuler les modifications de cette révision" vous permet de le faire.

2
Stan Mohler Jr.

Les opérations côté client n'apparaissent pas dans les journaux du référentiel. Vous voulez probablement vérifier à:

  • TortoiseSVN → SVN Vérifier les modifications

... afin de voir les différences entre les deux actions.

Après avoir examiné les modifications locales, vous devez commit comme d'habitude.

0