Hello,
On Sat 24 Dec 2022 at 01:18AM +02, Dmitry Gutov wrote:
On 23/12/2022 05:59, Sean Whitton wrote:
It works, except that sometimes the let-binding of process-environment
fails, such that the commands affect the normal index rather than the
temporary index. Can you see what I'm doing wrong there?
Could you describe be "sometimes" occurrences? Does that happen through
repeating a similar action several times? Or slightly different actions?
The process-environment setup seems fine. We did corrupt it in 1-2 places in
the past using 'setenv', but I don't see anything like that in the current
codebase. And the effect would probably be different anyway.
Thank you for looking. Slightly embarassingly, I can't reproduce the
problem today. So I've gone ahead and pushed.
I am pretty happy with this approach, in the end. Compared with other
possible uses of 'git stash', it's quite clean:
- it doesn't touch the worktree copies of the files not involved in the
commit
- it stashes a single diff, rather than two diffs (one for the worktree
and one for the index), which is less for the user to deal with if
manual recovery becomes required.