如何做相当于 "git add -p -w" 的操作?

How do I do an equivalent of "git add -p -w"?

SO上大约有5个相关问题,但我还没有找到答案。我得到的最接近的是 this answer.

的想法
git diff -w --no-color | git apply --cached --ignore-whitespace

这行不通。它将添加 all 更改,但我想按部分进行。是否有一种改进的方法也可以添加 git add 的行为 -p 标志?

这是一种方式:

git diff -w --no-color > patch 
git stash 
patch -p1 < patch
git add -i