Que représentent chacun des [y, n, q, a, d, /, K, j, J, g, e,?] Dans le contexte de git -p

272

Lorsque vous utilisez le mode -p git add -pou git stash -pque représente chacune des lettres?

Je suppose que youi et nnon. Quels sont les autres?

[y, n, q, a, d, /, K, j, J, g, e ,?]

chrisjlee
la source
64
Si vous essayez l' ?option, vous découvrirez
Abe Voelker
7
Peut-être que vous n'avez qu'à faire défiler un peu?
Cosimo
1
L'impression dans la réponse acceptée comprend des options non répertoriées lors de la saisie de '?'
Mark

Réponses:

325

Le -pmode signifie correctif, dont l'aide est difficile à trouver, mais si vous vérifiez, git add --helpvous trouverez les éléments suivants

   patch
       This lets you choose one path out of a status like selection. After choosing the path, it presents the diff between the index and the working tree file and asks you if you want to stage the change of each hunk. You can select one of the following options and type return:

           y - stage this hunk
           n - do not stage this hunk
           q - quit; do not stage this hunk nor any of the remaining ones
           a - stage this hunk and all later hunks in the file
           d - do not stage this hunk nor any of the later hunks in the file
           g - select a hunk to go to
           / - search for a hunk matching the given regex
           j - leave this hunk undecided, see next undecided hunk
           J - leave this hunk undecided, see next hunk
           k - leave this hunk undecided, see previous undecided hunk
           K - leave this hunk undecided, see previous hunk
           s - split the current hunk into smaller hunks
           e - manually edit the current hunk
           ? - print help
AD7six
la source
8
@VicGoldfeld d passera au fichier suivant tandis que q abandonnera complètement le processus?
Steve
5
qne pas réinitialiser les modifications précédemment mis en scène. Tout ce que vous avez déjà mis en scène reste mis en scène.
Alexander Bird
J'utilise -ppour le stockage, je ne savais pas que vous pouviez l'utiliser addaussi! Juste pour ajouter à cette réponse, bien qu'il soit fait mention du -p | --patchdrapeau, ce cmd: git stash --helpne vous donne PAS les mêmes informations sur les options de patch que le git add --helpfait.
Phil Gibbins
31

La signification de ces lettres peut être trouvée en tapant ? et appuyez sur la touche Entrée . Pour moi, cela ne venait pas quand on courait git add --help. J'ai compris la signification de ces options comme ci-dessous: -

Arup-iMac:$ git add -p
diff --git a/app/interactors/reporting_groups/list_colleagues.rb b/app/interactors/reporting_groups/list_colleagues.rb
index adc28af..f46f5e3 100644
--- a/app/interactors/reporting_groups/list_colleagues.rb
+++ b/app/interactors/reporting_groups/list_colleagues.rb
@@ -14,7 +14,4 @@ module ReportingGroups
         reporting_group.employees_from_team_sub_reporting_groups
       else
         reporting_group.users
-      end
-    end
-  end
-end
+      
Stage this hunk [y,n,q,a,d,/,e,?]? ? <-- Look here, what I typed to get these.
y - stage this hunk
n - do not stage this hunk
q - quit; do not stage this hunk nor any of the remaining ones
a - stage this hunk and all later hunks in the file
d - do not stage this hunk nor any of the later hunks in the file
g - select a hunk to go to
/ - search for a hunk matching the given regex
j - leave this hunk undecided, see next undecided hunk
J - leave this hunk undecided, see next hunk
k - leave this hunk undecided, see previous undecided hunk
K - leave this hunk undecided, see previous hunk
s - split the current hunk into smaller hunks
e - manually edit the current hunk
? - print help
@@ -14,7 +14,4 @@ module ReportingGroups
         reporting_group.employees_from_team_sub_reporting_groups
       else
         reporting_group.users
-      end
-    end
-  end
-end
+      
Stage this hunk [y,n,q,a,d,/,e,?]? 
Arup Rakshit
la source