threads / discuss / 64571

status shows no changes but stage won't pop

Subject: status shows no changes but stage won't pop

## tl;dr

3 messages between Dec 2, 2025 and Dec 3, 2025.

replies: 2people: 2as markdown or json

Lipofsky, Dan -ND· Dec 2, 2025, 19:23 UTC · lore
I believe I've uncovered a weird bug in the git client (2.49.0 and 2.52.0, installed with brew on MacOS 15.6.1).
status shows no changes, but stash won't pop because it says it would overwrite local changes
$ git status -u
On branch release/2.0.0
Your branch is ahead of 'origin/release/2.0.0' by 16 commits.
  (use "git push" to publish your local commits)
nothing to commit, working tree clean
$ git stash pop
error: Your local changes to the following files would be overwritten by merge:
	src/main/java/com/wdpr/nge/edt/gstexpds/web/ExperienceRecordController.java
Please commit your changes or stash them before you merge.
Aborting
On branch release/2.0.0
Your branch is ahead of 'origin/release/2.0.0' by 16 commits.
  (use "git push" to publish your local commits)

nothing to commit, working tree clean The stash entry is kept in case you need it again.

$ git version git version 2.52.0

So how did I get here? I did something weird (accidentally, because I was distracted with multiple windows open). I was doing a "git rebase -i" from the command-line, while at the same time I staged a change using Sourcetree, and then exited the rebase (I think without actually changing anything).

I have no idea how to fix this. I tried removing and checking out the problem file, but that didn’t help.

Thanks, Dan

brian m. carlson· Dec 2, 2025, 22:20 UTC · re: Lipofsky, Dan -ND · lore

Re: status shows no changes but stage won't pop

On 2025-12-02 at 19:23:53, Lipofsky, Dan -ND wrote:
Show 32 quoted lines
> I believe I've uncovered a weird bug in the git client (2.49.0 and 2.52.0, installed with brew on MacOS 15.6.1).
> 
> status shows no changes, but stash won't pop because it says it would overwrite local changes
> 
> $ git status -u
> On branch release/2.0.0
> Your branch is ahead of 'origin/release/2.0.0' by 16 commits.
>   (use "git push" to publish your local commits)
> 
> nothing to commit, working tree clean
> 
> $ git stash pop
> error: Your local changes to the following files would be overwritten by merge:
> 	src/main/java/com/wdpr/nge/edt/gstexpds/web/ExperienceRecordController.java
> Please commit your changes or stash them before you merge.
> Aborting
> On branch release/2.0.0
> Your branch is ahead of 'origin/release/2.0.0' by 16 commits.
>   (use "git push" to publish your local commits)
> 
> nothing to commit, working tree clean
> The stash entry is kept in case you need it again.
> 
> $ git version
> git version 2.52.0
> 
> 
> So how did I get here?
> I did something weird (accidentally, because I was distracted with multiple windows open).
> I was doing a "git rebase -i" from the command-line,
> while at the same time I staged a change using Sourcetree,
> and then exited the rebase (I think without actually changing anything).

Do you maybe have some files that are marked assume-unchanged or skip-worktree here? I wonder if that might be causing this issue, although I don't know for sure.

You can try this to see:
  git ls-files -v | grep -v '^H'

In a normal case, I would expect to not see any output from that command, but if one of the assume-unchanged or skip-worktree bits are set, then you would.

-- 
brian m. carlson (they/them)
Toronto, Ontario, CA
Lipofsky, Dan -ND· Dec 3, 2025, 14:40 UTC · re: brian m. carlson · lore

Re: status shows no changes but stage won't pop

On 12/2/25, 17:20, "brian m. carlson" <sandals@crustytoothpaste.net <mailto:sandals@crustytoothpaste.net>> wrote:
Show 11 quoted lines
> Do you maybe have some files that are marked assume-unchanged or
> skip-worktree here? I wonder if that might be causing this issue,
> although I don't know for sure.
> 
> You can try this to see:
> 
>   git ls-files -v | grep -v '^H'
> 
> In a normal case, I would expect to not see any output from that
> command, but if one of the assume-unchanged or skip-worktree bits are
> set, then you would.
There is no output from that command.

Thank you, Dan

← back to recent threads