Staging different parts of the same file with Git

December 10, 2024

My thoughts

y - stage this hunk
n - do not stage this hunk
q - quit; do not stage this hunk or any of the remaining ones
a - stage this hunk and all later hunks in the file
d - do not stage this hunk or 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

Workflow example:

git reset HEAD~2
git add --patch # y, n, s, e, ...
git comit -m ''
git stash
.... test
git stash pop
git add --patch

Read the article: Staging different parts of the same file with Git