Am 30.01.22 um 21:17 schrieb Géry Ogam: > Hello, > > I would like to stage, test, and commit only *some* changes of the working tree, and then repeat this process with the remaining changes. > > My current solution (published at https://stackoverflow.com/a/70914962/2326961): > > 1. Stage some changes: > ``` > git add -p file > ``` > 2. Save away the remaining changes: > ``` > git diff >patch > git stash push -k > ``` > 3. Test the staged changes. > 4. Commit the staged changes: > ``` > git commit > ``` > 5. Restore the remaining changes: > ``` > git apply patch > ``` > 6. Go to step 1.> > It is not ideal because a) it uses a patch file for saving the > remaining changes; b) it uses the stash only for setting the working > tree to the index state. > > It would be ideal if I could save *only* the remaining changes in the > stash instead of resorting to a patch file. How to do it? For example: 1. Stage some changes 2. Commit 3. git stash 4. Test 4a. git commit --amend if tests show that the commit is not yet perfect 5. git stash pop 6. Goto 1. Be prepared for conflicts in 5 if 4a was necessary. -- Hannes