From: Junio C Hamano Date: Mon, 05 Oct 2026 16:43:03 GMT Subject: Re: [PATCH v2] stash: expose untracked modes in create Message-ID: In-Reply-To: 重田一聖 writes: > Your question made me realize that I had focused too narrowly on the > untracked modes. The larger issue is not simply that `do_create_stash()` > has capabilities that `git stash create` does not expose. Brilliant. I agree that is the right way to frame the issue. > Making more of those capabilities available through `create` would > therefore mean either changing that contract or designing around it. > That is a much larger interface decision than I appreciated when I sent > the patch. Perhaps, but I do not think it is too huge a backward-compatibility breakage to forbid giving a message lazily (i.e., all strings in argv[] after 'git stash create' gets concatenated and becomes a single message) that begins with "-", with an escape hatch that a leading "-m" will take the next argv[] element as the message, for example. > 2. Add a new stash subcommand for the creation functionality. This is essentially how 'git stash save' came about, to give us ways to control how a new stash entry is created and how the working tree is cleared with command line options. In the beginning, you did not even have to say 'save', because 'git stash ' was invented as a way to say "the boss is here and tells me to work on something unrelated. clear the slate with minimum number of keystrokes to continue working on what I have been working on later." And that later became 'git stash push'. > 3. Add something like `--create-only` to `git stash push`. This also would work and sounds the safest.