public inbox for git@vger.kernel.org
 help / color / mirror / Atom feed
* git rebase interactive breaks when working on a secondary worktree
@ 2025-06-26 10:49 Denilson Sá Maia
  2025-06-26 15:57 ` Kristoffer Haugsbakk
  2025-06-27  9:52 ` Phillip Wood
  0 siblings, 2 replies; 5+ messages in thread
From: Denilson Sá Maia @ 2025-06-26 10:49 UTC (permalink / raw)
  To: git

git rebase interactive breaks when working on a secondary worktree

## What did you do before the bug happened?

1. `git clone` a repository.
2. `git worktree add` to have a second branch checked out in another directory.
3. Continue working as normal. The main branch has a bunch of extra
commits (at the main worktree).
4. At the second worktree, after a while, try `git rebase -i
hash_of_a_few_commits_ago`, or `git rebase -i main` (where main is the
main branch at the main worktree).
5. Approve the plan, even without any changes.

## What did you expect to happen?

It should work.

## What happened instead?

I get this error:

    error: Your local changes to the following files would be
overwritten by checkout:

Followed by a list of several files that were NOT changed in my
secondary branch at my secondary worktree.

What's more, if I redo the `git rebase` but without `-i`, it works
fine without any errors.

## What's different between what you expected and what actually happened?

If I try following the exact same steps (the exact same git rebase -i)
on the exact same branch, but this time having it checked out at the
main worktree, then everything works.

## Anything else you want to add:

I've been hitting this error for several months.

It doesn't happen every time, it depends on the commits from both
branches. Thus, it's hard for me to give you a minimal reproducible
example git repository.

Given the circumstances, I believe some part of the `git rebase
--interactive` codepath is not working correctly with worktrees, and
thus it's misbehaving.



[System Info]
git version:
git version 2.49.0
cpu: arm64
no commit associated with this build
sizeof-long: 8
sizeof-size_t: 8
shell-path: /bin/sh
feature: fsmonitor--daemon
libcurl: 8.7.1
zlib: 1.2.12
uname: Darwin 24.5.0 Darwin Kernel Version 24.5.0: Tue Apr 22 19:54:29
PDT 2025; root:xnu-11417.121.6~2/RELEASE_ARM64_T6030 arm64
compiler info: clang: 17.0.0 (clang-1700.0.13.3)
libc info: no libc information available
$SHELL (typically, interactive shell): /bin/zsh


[Enabled Hooks]
applypatch-msg
commit-msg
post-applypatch
post-checkout
post-commit
post-merge
post-rewrite
pre-applypatch
pre-auto-gc
pre-commit
pre-merge-commit
pre-push
pre-rebase
prepare-commit-msg


-- 
Denilson Figueiredo de Sá Maia
https://denilson.sa.nom.br/

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

end of thread, other threads:[~2025-06-27 11:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-26 10:49 git rebase interactive breaks when working on a secondary worktree Denilson Sá Maia
2025-06-26 15:57 ` Kristoffer Haugsbakk
2025-06-26 18:33   ` Denilson Sá Maia
2025-06-27  9:52 ` Phillip Wood
2025-06-27 11:42   ` Denilson Sá Maia

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