Git (TortoiseGit) - comment faire pour revenir à une révision précédente un fichier unique, puis annuler le retour?
lors de L'utilisation de Git avec TortoiseGit: quelqu'un sait-il comment revenir à une révision précédente d'un fichier(ou d'un dépôt complet)?
par exemple, j'ai un dépôt contenant plusieurs fichiers. Un fichier existe en trois versions (1 ; 2 ; 3). Maintenant, je veux changer de révision 3 à 2.
TortoiseGit offre une fonction "Revert" dans la boîte de dialogue "Show log" qui permet de revenir à une révision spécifique, mais cela va revenir à votre dépôt entier au lieu d'un seul fichier.
aussi une fois que j'ai inversé quelque chose, je n'ai pas la moindre idée de comment défaire le retour et revenir à la dernière révision.
5 réponses
dans TortoiseGit la réponse est de droit-cliquez le dossier du projet et cliquez sur Afficher journal, puis droit-cliquez sur le changement que vous voulez retourner à et cliquez sur Switch/Checkout à ce... . Il vous permettra ensuite de procéder à partir de cet endroit étrange dans la pile de propagation, ou branche dans le cas où vous projetez de commettre et que vous voulez que les choses restent saines d'esprit.
de la ligne de commande: git checkout
c'est probablement ce que tu veux.
la documentation montre un exemple de:
$ git checkout master~2 Makefile
revenir Makefile
à deux révisions de retour dans la branche master
de L'intérieur de TortoiseGit (via Windows Explorer) il semble que vous pouvez le faire avec les étapes suivantes:
Show log
dans le menu contextuel TortoiseGit Revert to this revision
1 files revert to e19a77
Il est également possible d'obtenir un fichier spécifique:
- clic droit sur le fichier
- choisissez l'élément de menu: git Show Log
TortoiseGit afficher un dialogue avec une liste de toutes les révisions
- Cliquez sur l'état de la révision (2)
dans une liste en bas de la boîte de dialogue, il affiche tous les fichiers associés à la propagation
- trouver le fichier que vous recherchez ""
- faites un clic droit sur ce fichier et sauvegardez la révision sur
- cela sauvegardera la révision précédente du fichier avec le numéro de propagation concaténé sur le fichier
par exemple: - le fichier d'origine du fichier.txt - la révision 2 enregistrera le fichier-67b51a8.txt
J'utilise TortoiseGit v2.2.0.0
mis à jour ma réponse, sur la base de ces commentaires:
supposons que l'arbre de travail est propre et que vous voulez:
- Checkout certains fichier(s) de sa précédente révision
- test
- revenir à la révision actuelle
-
consultez quelques fichiers de sa révision précédente
(a) faites un clic droit sur le fichier que vous voulez restaurer et affichez le Log pour ce fichier
(b) faites un clic droit sur le fichier dans la liste des fichiers et exécutez revenir à révision parent
(c) répétez les étapes (a), (b) jusqu'à ce que vous obtenez tous les fichiers que vous souhaitez.
-
Test
-
revenir à la révision actuelle
(a) effectuer des Revenir... dans le menu contextuel de l'explorateur
de Cette façon, vous pouvez choisir le ou les fichier(s) que vous voulez revenir.
(b) ou de la présente méthode rapide: effectuer Hard Reset dans la boîte de dialogue du Journal
de cette façon, tous les fichiers changés reviennent en arrière. (=> Perdu tout travail dir changements)
(testé sur TortoiseGit 1.8.16.1, GfW 2.6.4.Windows.1, Gagner 10 64bit)
Pour Tortue Version 2.3.0:
vous pouvez le faire de plusieurs façons, mais le plus rapide je pense est que:
- clic droit sur le fichier
- cliquez sur l'option de menu "Diff avec la version précédente"
- clic droit sur la version gauche (précédente) du fichier
- cliquez sur l'option de menu "utilisez ce fichier entier"
- enregistrer les modifications (ctrl+s)