web-dev-qa-db-fra.com

Revenir à un commit précédent dans Git pour Visual Studio 2012

Je suis vraiment nouveau dans le contrôle git et source.

J'utilise des outils Visual Studio pour Git avec VS2012.

Je suis sur un commit et je veux revenir à un commit précédent mais je n'arrive pas à le faire comment. Lorsque je vais dans les détails de la validation, le bouton de retour semble avoir été grisé.

Je suis resté sur ce problème pendant les 2 dernières heures. J'ai fait des recherches sur Internet, mais en vain. S'il vous plaît quelqu'un peut-il me dire comment revenir à un commit précédent.

Merci.

38
Win Coder

Eh bien, pour les débutants qui ont le même problème, la meilleure façon de ne pas perdre 3 heures de votre vie est simplement de ne pas utiliser Visual Studio Tool pour GIT. Du moins pas dans sa forme actuelle. (23 juin 2013)

Après avoir perdu beaucoup de temps, j'ai découvert à partir d'un lien obscur que l'extension vs ne prend en charge que quelques-unes des fonctions GIT avec réinitialisation n'étant pas l'une d'entre elles.

15
Win Coder

Visual Studio 2015 pdate 2 ajoute la prise en charge de GIT "Reset", ce que vous voulez probablement faire:

GIT Reset in Visual Studio 2015 Update 2

35
Runar Jordahl

Vous ne voulez pas faire de retour - le retour prend juste un commit et l'annule.

Si vous souhaitez revenir à un commit précédent, il existe deux options:

Si vous souhaitez revenir en permanence, effectuez une réinitialisation matérielle git, qui restaure le code dans un commit spécifié. Vous pouvez le faire via:

git reset --hard {commit number}

Si vous souhaitez revenir temporairement en arrière, vous pouvez créer une branche à partir de cette validation. qui vous gardera essentiellement le chemin actuel dans l'historique du code et créera un autre chemin à partir du point de l'historique où ce code a été validé .

30
Oved D

Dans Team Explorer -> Branches puis sélectionnez Actions -> Open command Prompt et utilisez les commandes git soit:

  • git checkout your commit id
  • git reset your commit id

vérifiez ceci pour comprendre la différence Quelle est la différence entre "git reset" et "git checkout"?

Je pense que vous devrez également installer l'extension git dans Visual Studio, je l'ai, mais je ne suis pas sûr que ce soit nécessaire pour le faire.

enter image description here

9
nest