# [PATCH 0/2] Clean up more of the fall-out from dropping the scripted git rebase

5 messages from 2019-07-24 to 2019-07-25. Participants: Johannes Schindelin via GitGitGadget, Junio C Hamano, Johannes Schindelin.
Thread: https://gitlist.dev/t/51520

## Johannes Schindelin via GitGitGadget, 2019-07-24 21:14

Subject: [PATCH 0/2] Clean up more of the fall-out from dropping the scripted git rebase
Message-ID: <pull.293.git.gitgitgadget@gmail.com>
URL: https://gitlist.dev/e/pull.293.git.gitgitgadget%40gmail.com

```
I had prepared these patches even before v2.22.0, but deemed them not
critical enough to push into that release.

Johannes Schindelin (2):
  rebase: fix white-space
  git: mark cmd_rebase as requiring a worktree

 builtin/rebase.c | 6 +-----
 git.c            | 7 +------
 2 files changed, 2 insertions(+), 11 deletions(-)


base-commit: 082ef75b7bfc90ac236afbb857a9552a026832b8
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-293%2Fdscho%2Frebase-cleanup-more-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-293/dscho/rebase-cleanup-more-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/293
-- 
gitgitgadget

```

## Johannes Schindelin via GitGitGadget, 2019-07-24 21:14

Subject: [PATCH 1/2] rebase: fix white-space
Message-ID: <3bcebf1eae3cad9c55d233f2271126a99e9e34cb.1564002897.git.gitgitgadget@gmail.com>
URL: https://gitlist.dev/e/3bcebf1eae3cad9c55d233f2271126a99e9e34cb.1564002897.git.gitgitgadget%40gmail.com
In-Reply-To: <pull.293.git.gitgitgadget@gmail.com>

```
From: Johannes Schindelin <johannes.schindelin@gmx.de>

This trailing space was inadvertently introduced in 9fbcc3d203 (Merge
branch 'js/rebase-orig-head-fix', 2019-03-20).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 builtin/rebase.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/builtin/rebase.c b/builtin/rebase.c
index 9c52144fc4..798b9ae2d7 100644
--- a/builtin/rebase.c
+++ b/builtin/rebase.c
@@ -2104,7 +2104,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 	strbuf_addf(&msg, "%s: checkout %s",
 		    getenv(GIT_REFLOG_ACTION_ENVIRONMENT), options.onto_name);
 	if (reset_head(&options.onto->object.oid, "checkout", NULL,
-		       RESET_HEAD_DETACH | RESET_ORIG_HEAD | 
+		       RESET_HEAD_DETACH | RESET_ORIG_HEAD |
 		       RESET_HEAD_RUN_POST_CHECKOUT_HOOK,
 		       NULL, msg.buf))
 		die(_("Could not detach HEAD"));
-- 
gitgitgadget


```

## Johannes Schindelin via GitGitGadget, 2019-07-24 21:15

Subject: [PATCH 2/2] git: mark cmd_rebase as requiring a worktree
Message-ID: <bee82eb36f8dc1bd7d31d4db763d0d0e1b0a4b84.1564002897.git.gitgitgadget@gmail.com>
URL: https://gitlist.dev/e/bee82eb36f8dc1bd7d31d4db763d0d0e1b0a4b84.1564002897.git.gitgitgadget%40gmail.com
In-Reply-To: <pull.293.git.gitgitgadget@gmail.com>

```
From: Johannes Schindelin <johannes.schindelin@gmx.de>

We skipped marking the "rebase" built-in as requiring a .git/ directory
and a worktree only to allow to spawn the scripted version of `git
rebase`.

Now that we no longer have that escape hatch, we can change that to the
canonical form.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 builtin/rebase.c | 4 ----
 git.c            | 7 +------
 2 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/builtin/rebase.c b/builtin/rebase.c
index 798b9ae2d7..b33ec9c7c0 100644
--- a/builtin/rebase.c
+++ b/builtin/rebase.c
@@ -1481,10 +1481,6 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 		usage_with_options(builtin_rebase_usage,
 				   builtin_rebase_options);
 
-	prefix = setup_git_directory();
-	trace_repo_setup(prefix);
-	setup_work_tree();
-
 	options.allow_empty_message = 1;
 	git_config(rebase_config, &options);
 
diff --git a/git.c b/git.c
index 1bf9c94550..1461e819c3 100644
--- a/git.c
+++ b/git.c
@@ -549,12 +549,7 @@ static struct cmd_struct commands[] = {
 	{ "push", cmd_push, RUN_SETUP },
 	{ "range-diff", cmd_range_diff, RUN_SETUP | USE_PAGER },
 	{ "read-tree", cmd_read_tree, RUN_SETUP | SUPPORT_SUPER_PREFIX},
-	/*
-	 * NEEDSWORK: Until the rebase is independent and needs no redirection
-	 * to rebase shell script this is kept as is, then should be changed to
-	 * RUN_SETUP | NEED_WORK_TREE
-	 */
-	{ "rebase", cmd_rebase },
+	{ "rebase", cmd_rebase, RUN_SETUP | NEED_WORK_TREE },
 	{ "rebase--interactive", cmd_rebase__interactive, RUN_SETUP | NEED_WORK_TREE },
 	{ "receive-pack", cmd_receive_pack },
 	{ "reflog", cmd_reflog, RUN_SETUP },
-- 
gitgitgadget

```

## Junio C Hamano, 2019-07-25 15:56

Subject: Re: [PATCH 0/2] Clean up more of the fall-out from dropping the scripted git rebase
Message-ID: <xmqqh87aqfaa.fsf@gitster-ct.c.googlers.com>
URL: https://gitlist.dev/e/xmqqh87aqfaa.fsf%40gitster-ct.c.googlers.com
In-Reply-To: <pull.293.git.gitgitgadget@gmail.com>

```
"Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
writes:

> I had prepared these patches even before v2.22.0, but deemed them not
> critical enough to push into that release.

Thanks.  Both of these look quite sensible.  Will queue and
fast-track.

```

## Johannes Schindelin, 2019-07-25 18:53

Subject: Re: [PATCH 0/2] Clean up more of the fall-out from dropping the scripted git rebase
Message-ID: <nycvar.QRO.7.76.6.1907252052570.21907@tvgsbejvaqbjf.bet>
URL: https://gitlist.dev/e/nycvar.QRO.7.76.6.1907252052570.21907%40tvgsbejvaqbjf.bet
In-Reply-To: <xmqqh87aqfaa.fsf@gitster-ct.c.googlers.com>

```
Hi Junio,

On Thu, 25 Jul 2019, Junio C Hamano wrote:

> "Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
> writes:
>
> > I had prepared these patches even before v2.22.0, but deemed them not
> > critical enough to push into that release.
>
> Thanks.  Both of these look quite sensible.  Will queue and
> fast-track.

Thank you!
Dscho

```
