[BUG?] 'git rebase --abort' couldn't abort aborted rebase

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



That's a good subject, isn't it? :)

So, to clarify: apparently it is possible to abort an ongoing 'git
rebase' process with ctrl-C in just the right moment that a subsequent
'git rebase --abort' will refuse to clear it up.

I somehow messed up the upstream and branch parameters of 'git
rebase', and ended up trying to rebase a fairly recent (post v2.24.0)
branch on top of v2.22.0.  Upon seeing the unexpectedly large number
of patches I realized that something is wrong, hit ctrl-C right away,
and this is what happened:

  $ git rebase v2.22.0 <a-branch-on-top-of-2.24.0>
  First, rewinding head to replay your work on top of it...
  Generating patches: 100% (1108/1108), done.
  Applying: send-email: move the read_config() function above getopts
  Applying: send-email: rename the @bcclist variable for consistency
  Applying: send-email: do defaults -> config -> getopt in that order
  Using index info to reconstruct a base tree...
  M       git-send-email.perl
  M       t/t9001-send-email.sh
  Falling back to patching base and 3-way merge...
  Auto-merging t/t9001-send-email.sh
  Auto-merging git-send-email.perl
  ^C
  ((5f07da12ac...) *|REBASE 3/1108)$ git rebase --abort 
  error: could not read '/home/szeder/src/git/.git/worktrees/WT/rebase-apply/head-name': No such file or directory
   
"Fortunately" it was in a separate worktree, so I could easily get out
of the situation by forcibly deleting that worktree.  Unfortunately,
that was exactly what I did, instead of securing the failed state for
later analysis...  sorry.
The only thing I still have is the list of files in the rebase directory,
rescued from the terminal's scrollback buffer:

  $ ls ~/src/git/.git/worktrees/WT/rebase-apply/
  < ... omitting the 1k+ patch files ... >
  abort-safety
  apply-opt
  author-script
  final-commit
  keep
  last
  messageid
  next
  original-commit
  patch
  patch-merge-index
  quiet
  rebasing
  rewritten
  scissors
  sign
  threeway
  utf8

All this is with a git built from current 'next', with a bunch of
unrelated (none of them touches rebase or the sequencer) patches on
top.





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux