いくつかの変更をステージングしたとします。
$ git diff --cached # few changes are stashed
+ change 1 new
blabla
- change 2 old
+ change 2 new
blabla
- change 3 old
+ change 3 new
blabla
$ git diff # no other changes
ここで、変更 2 なしでプログラムをすばやくテストしたいと思います。これによりgit reset head -p; git stash
、変更 2 を完全に取り除くことができます。しかし、ステージングを解除したくありません。これは単なるテストです。後でコミットしたいと思っています。したがって、作業ディレクトリの変更 2 からの変更とは逆の変更を行いたいと思います。結果は次のようになります。
$ git diff --cached # 1-3 changes are stashed
+ change 1 new
blabla
- change 2 old
+ change 2 new
blabla
- change 3 old
+ change 3 new
blabla
$ git diff #change 2 is undone
change 1 new
blabla
+ change 2 old
- change 2 new
blabla
change 3 new
blabla
どうすればこれを達成できますか?