Question

Comment annuler tout ou partie d'un commit SVN en utilisant TortoiseSVN?

Était-ce utile?

La solution

Tout d'abord, vous devez identifier plutôt que vous souhaitez revenir à toutes les modifications " d'une révision, ou juste un seul fichier. TortoiseSVN a seulement le " 1 ou tous " approche; En d'autres termes, vous pouvez rétablir l'intégralité de l'ensemble d'archivage ou de fichiers uniques: archivages non partiels.

Ensemble de modifications complet

Ainsi, si vous revenez en arrière sur une révision spécifique (et que vous souhaitez que tous les fichiers de cet ensemble de modifications soient modifiés), vous souhaiterez cliquer avec le bouton droit de la souris - > TortoiseSVN - > Afficher le journal. Recherchez la révision / jeu de modifications que vous souhaitez restaurer, cliquez dessus avec le bouton droit de la souris, puis sur "Revenir à cette révision".

Il existe une autre option qui pourrait vous intéresser, à savoir "Inverser les modifications de cette révision", qui effectuera une fusion entre cette révision et votre version actuelle, et ne fusionnera que les différences. Je trouve cela plus attrayant parfois; ainsi, je peux garder tous les changements entre les changesets.

Fichier unique

L’autre option consiste à restaurer un fichier unique. Vous feriez à nouveau un clic droit - > TortoiseSVN - > Afficher le journal; mais cette fois, vous pouvez sélectionner un seul fichier.

TortoiseSVN ne vous permet pas de sélectionner plusieurs fichiers dans un ensemble de modifications vers lequel revenir. C'est soit tout, soit juste un.

Archivages de l'ensemble de modifications

Pour toutes les autres lectures, assurez-vous que "checkins" n'implique que les fichiers liés à ce changement. Cela devrait être une pratique courante ces jours-ci; mais je trouve toujours les développeurs "shotgunning". l'enregistrement à la fin de la journée, regroupant toutes les modifications de la journée en un seul enregistrement.

Je brille sur ces développeurs avec w strabisme. -_ ^

Autres conseils

Si vous souhaitez rétablir la validation (révision) précédemment effectuée:

Avec l'explorateur:

  1. Faites un clic droit sur le fichier / dossier que vous souhaitez rétablir,
  2. TortoiseSVN- > afficher le journal,
  3. faites un clic droit sur une révision non souhaitée,
  4. "Annuler les modifications de cette révision",
  5. commit- > OK.

Si vous souhaitez annuler les modifications apportées localement (non validées)

Avec l'explorateur: cliquez avec le bouton droit sur le (s) fichier (s), TortoiseSVN- > Revert.

Sinon, vous pouvez extraire une révision particulière d'une copie de travail locale et la renvoyer à la tête, selon Bartek.

Notez que vous ne pouvez que "revenir en arrière". en ce sens que vous archivez une nouvelle révision, qui ne contient plus les modifications que vous souhaitez annuler. Cela est décrit dans les autres réponses.

Vous ne pouvez pas ne pas défaire un enregistrement (comme dans "cela ne s'est jamais passé"), l'ancien état sera toujours dans l'historique du référentiel.

Annuler / supprimer des éléments est une demande de fonctionnalité de longue date:

http://subversion.tigris.org/issues/show_bug.cgi ? id = 516

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top