Re: [PATCH v2 1/1] sequencer: fix empty commit check when amending
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Nov 25, 2019, 15:53 UTC
- Message-ID
- <nycvar.QRO.7.76.6.1911251652510.31080@tvgsbejvaqbjf.bet>
- In-Reply-To
- <43bdadd2-9ea9-4e50-1f47-ec18e0db4794@gmail.com>
Hi Phillip,
On Mon, 25 Nov 2019, Phillip Wood wrote:
Show 46 quoted lines
> On 25/11/2019 03:00, Junio C Hamano wrote: > > Phillip Wood <phillip.wood123@gmail.com> writes: > > > > > We do actually check that there is a valid HEAD before we try to fixup > > > a commit. Though perhaps we should still change this patch as HEAD may > > > be changed by another process between that check and re-reading it > > > here. If you try to fixup a commit without a valid HEAD you get > > > > > > error: need a HEAD to fixup > > > hint: Could not execute the todo command > > > hint: > > > hint: fixup faef1a5a7637ff91b3611aabd1b96541da5f5536 P > > > hint: > > > hint: It has been rescheduled; To edit the command before continuing, > > > hint: please > > > hint: edit the todo list first: > > > hint: > > > hint: git rebase --edit-todo > > > hint: git rebase --continue > > > error: could not copy '.git/rebase-merge/message-squash' to > > > '.git/rebase-merge/message' > > > > > > The last error message is unfortunate but we do exit in an orderly > > > manner rather than segfaulting. > > > > Thanks for thinking about the issue further. > > > > > diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh > > > index d2f1d5bd23..4f55f0cd1c 100755 > > > --- a/t/t3404-rebase-interactive.sh > > > +++ b/t/t3404-rebase-interactive.sh > > > @@ -67,6 +67,21 @@ test_expect_success 'setup' ' > > > SHELL= > > > export SHELL > > > > > > +test_expect_success 'fixup on orphan branch errors out' ' > > > + > > > + test_when_finished "git switch master" && > > > + write_script switch-branch.sh <<-\EOF && > > > + git symbolic-ref HEAD refs/heads/does-not-exist && > > > + git rm -rf . > > > > That "git rm -rf ." scares me, though. > > I know I'm not too keen on it my self but we need to empty the worktree and > index if we're going to switch to an unborn branch
How about `git worktree --orphan does-not-exist unborn`?
Ciao, Dscho