Às vezes, você deseja preparar apenas uma parte de uma mudança para dividir em commits separados.
É para isso que git stage --patch|-p
foi projetado:
Irá aparecer um texto ui onde você pode ver sua mudança como um diff. Cada “grande parte” é automaticamente dividida pelo git em pequenos pedaços.
Aqui está um resumo do comando disponível:
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
Para tirar o palco, siga o mesmo fluxo de trabalho, mas use git reset --patch