2024-07-08 / uncategorized

Use “git checkout --patch” to apply changes line by line

git checkout line by line (hunk by hunk)

Is it possible to git-checkout a single line instead of the entire file?

git checkout <branch> --patch -- <files>

Then it will interactively go through each hunk and you can add/edit/drop the changes you want

#  From https://stackoverflow.com/a/39158451
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