Git development
 help / color / mirror / Atom feed
* REBASE_HEAD still exists after success end rebase
@ 2026-07-28  8:26 Long 76
  2026-07-28  9:39 ` Matt Hunter
  0 siblings, 1 reply; 2+ messages in thread
From: Long 76 @ 2026-07-28  8:26 UTC (permalink / raw)
  To: git

Hi,
My configuration:
OS Kubuntu 24.04
Git version: 2.54.0 from ppa:git-core/ppa

.gitconfig
[merge]
     guitool = meld
     tool = meld
[core]
     editor = code -w
     autocrlf = input
     quotePath = false
     eol = lf

[global]
[diff]
     tool = meld
[gui]
     editor = code
[fetch]
     prune = true
[mergetool]
     keepBackup = false

How to reproduce:
1) Made repo
# Init repo with README.md
git init
echo -e '# Git rebase bug\n\n```\ngit rebase master\ngit mergetool\ngit 
rebase --continue\ngit rev-parse REBASE_HEAD\n```' > README.md
git add README.md
git commit -m "docs: add README.md"

# Add feature branch
git branch feature_branch

# Add files in separate commits
echo -e "Text 1 line\nText 2 line\nText 3 line\nText 4 line\nText 5 
line" > Text1.txt
git add Text1.txt
git commit -m "feat: add Text1.txt"

echo -e "Text 1 line\nText 2 line\nText 3 line\nText 4 line\nText 5 
line" > Text2.txt
git add Text2.txt
git commit -m "feat: add Text2.txt"

echo -e "Text 1 line\nText 2 line\nText 3 line\nText 4 line\nText 5 
line" > Text3.txt
git add Text3.txt
git commit -m "feat: add Text3.txt"

# Do the same in feature branch and one more in one commit
git checkout feature_branch
echo -e "Texts 1 line\nTexts 2 line\nTexts 3 line\nText 4 line\nTexts 5 
line" > Text1.txt
git add Text1.txt

echo -e "Text 1 line\nText 2 line\nText 3 line\nText 4 line\nText 5 
line" > Text2.txt
git add Text2.txt

echo -e "Texts 1 line\nTexts 2 line\nTexts 3 line\nText 4 line\nTexts 5 
line" > Text3.txt
git add Text3.txt

echo -e "Texts 1 line\nTexts 2 line\nText 3 line\nTexts 4 line\nText 5 
line" > Text4.txt
git add Text4.txt
git commit -m "feat: add all files"
2) Call — git rebase master
3) Call — git mergetool
4) Call — git rebase --continue
5) Call — git rev-parse REBASE_HEAD
Last command return value and .git/REBASE_HEAD exists.
In other words REBASE_HEAD exists if ogirinal commit in new branch 
modified and need call git push --force to send it to server. Please fix 
it, thanks!

--
Long76

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: REBASE_HEAD still exists after success end rebase
  2026-07-28  8:26 REBASE_HEAD still exists after success end rebase Long 76
@ 2026-07-28  9:39 ` Matt Hunter
  0 siblings, 0 replies; 2+ messages in thread
From: Matt Hunter @ 2026-07-28  9:39 UTC (permalink / raw)
  To: Long 76, git

On Tue Jul 28, 2026 at 4:26 AM EDT, Long 76 wrote:
>
> In other words REBASE_HEAD exists if ogirinal commit in new branch 
> modified and need call git push --force to send it to server. Please fix 
> it, thanks!

I ran into this not that long ago too, while working on a script.  It
looked like this behavior depended on how the _last_ item in the rebase
todo list was handled.  I found if the last action was a squash or edit
(I don't think reword did this), then REBASE_HEAD was left behind.

Also, if rebase stops on a break command, then REBASE_HEAD will be
missing, even though a rebase is still in-progress.

I made a very short-lived effort to look into why this "bug" was
happening.  I say "bug" in quotes, because I'm not even sure if it is
even problematic behavior.

I solved my need at the time (detecting a rebase in progress) by
checking for the existence of either of the 'rebase-merge' or
'rebase-apply' directories in $GIT_DIR.
>
> --
> Long76

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-07-28  9:39 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-28  8:26 REBASE_HEAD still exists after success end rebase Long 76
2026-07-28  9:39 ` Matt Hunter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox