Re: [PATCH v11 20/22] stash: convert `stash--helper.c` into `stash.c`
From: Junio C Hamano <hidden>
Date: 2018-11-26 05:30:36
Paul-Sebastian Ungureanu [off-list ref] writes:
The old shell script `git-stash.sh` was removed and replaced
entirely by `builtin/stash.c`. In order to do that, `create` and
`push` were adapted to work without `stash.sh`. For example, before
this commit, `git stash create` called `git stash--helper create
--message "$*"`. If it called `git stash--helper create "$@"`, then
some of these changes wouldn't have been necessary.
This commit also removes the word `helper` since now stash is
called directly and not by a shell script.
Signed-off-by: Paul-Sebastian Ungureanu <redacted>
---
.gitignore | 1 -
Makefile | 3 +-
builtin.h | 2 +-
builtin/{stash--helper.c => stash.c} | 157 +++++++++++++++------------
git-stash.sh | 153 --------------------------
git.c | 2 +-
6 files changed, 92 insertions(+), 226 deletions(-)
rename builtin/{stash--helper.c => stash.c} (91%)
delete mode 100755 git-stash.shSeeing the recent trouble in "rebase in C" and how keeping the scripted version as "git legacy-rebase" helped us postpone the rewritten version without ripping the whole thing out, I wonder if we can do the same here. Also, the remaining two patches should be done _before_ this step, I would think. I can understand it if the reason you have those two after this step is because you found the opportunity for these improvements after you wrote this step, but in the larger picture seen by the end users of the "stash in C" and those developers who follow the evolution of the code, the logical place for this "now we have everything in C, we retire the scripted version" step to happen is at the very end. Thanks.