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

From: "brian m. carlson" <[email-masked]>
Date: Tue, 2 Dec 2025 22:20:37 +0000

On 2025-12-02 at 19:23:53, Lipofsky, Dan -ND wrote:
> 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