Hi, I'm trying to write a script for my use that would run before every invocation of 'make' and record the working tree state at that point. Stripping out the boring parts, it is basically just git update-ref --create-reflog refs/build $(git stash create) but the problem is that what I want is less like 'git stash create' and more like 'git stash create --include-untracked', in case there are any new and as yet untracked source files that are nevertheless picked up by the build system. Of course, that does not exist and, because of the syntax of 'git stash create', cannot exist. I've looked at the code in builtin/stash.c and it looks like there are only two callers of do_create_stash(): one is create_stash() and hardcodes the include_untracked argument to zero, the other is do_push_stash() and (assuming I try to undo its effects with 'git stash pop' afterwards) will potentially destroy my working tree's mtimes and cause more rebuilding than necessary. So it seems like I'm stuck here. Any suggestions? -- Thanks, Alex