Dans Git GUI, je peux sélectionner des parties d'un diff et mettre en scène uniquement ces lignes ou ces morceaux. Comment ferais-je le contraire, comme dans l'annulation de lignes modifiées dans un fichier. Habituellement, ce sont des modifications d’espace blanc accidentelles. Je veux simplement revenir en arrière, tout en organisant/validant d’autres parties du même fichier.
Pour Git Gui: Cliquez d’abord sur Rescan pour rechercher le fichier modifié. Ensuite, cliquez sur l'icône située à gauche du nom du fichier pour mettre en place toutes les modifications pour la validation. Ensuite, faites un clic droit sur la ligne de débogage et choisissez Unstage Line From Commit.
Les informations ci-dessus de: http://nathanj.github.com/gitguide/tour.html
Placez les pièces de votre choix avec git add -p
, puis supprimez (git checkout -- filename
) les modifications non mises en scène.
Mise à jour pour Git 1.6.5+
Dans la version 1.6.5, Git a appris à passer à la caisse avec un drapeau -p/--patch
. Vous pouvez supprimer des morceaux en une étape avec git checkout -p -- filename
.
De les docs :
Sélectionnez de manière interactive des morceaux dans la différence entre <tree-ish> (ou l'index, si non spécifié) et l'arbre de travail. Les morceaux choisis sont ensuite appliqués en sens inverse à l’arbre de travail (et si un <tree-ish> a été spécifié, l’index).
Cela signifie que vous pouvez utiliser git checkout -p pour ignorer les modifications de votre arborescence de travail actuelle.
À Git Gui,
Source: http://git.661346.n2.nabble.com/Revert-hunk-td4991128.html
J'utilise git stash -p
à cette fin. Cela a pour effet secondaire de créer une réserve avec les modifications qui ont été supprimées de l’arborescence de travail, ce qui est parfois utile pour les restaurer rapidement.