Git rebase on Windows sometimes fails with inexplicable “your untracked working tree files would be overwritten” error
This is something that occasionally affects some of our developers when they do a pull with rebase. For example, after making 5 commits locally to master and they run a:
git pull --rebase origin master
to make their history linear before pushing. Most of the time this works fine, but every now and then, during the “Reapplying your commits” stage, around a couple of commits in, the rebase will halt with the error:
- How to change line-ending settings
- msysgit vim cursorline is dark on my light background. how to set it to light or off
- git clone from linux to a windows with git-upload-pack not found. Msysgit prepend “windows path” to git-upload-pack
- Git checkout -b with --track fails
- W access for gitolite-admin DENIED to user
- GIT able to push the zipped file but get fatal: early EOF when pushing the unzipped contents -
The following untracked working tree files would be overwritten by merge
and list the files that were modified by the commit(s) that were already applied.
I’ve seen a number of reports of this problem, such as this question, but they are all talking about OSX and we are on Windows. Nevertheless we tried setting:
git config --global core.trustctime false
but that hasn’t helped. We’ve made sure anti virus isn’t monitoring the source controlled directories and there are no backup programs running… nothing should be touching these files during a rebase operation.
Has anyone else encountered this problem and found a cause?
One Solution collect form web for “Git rebase on Windows sometimes fails with inexplicable “your untracked working tree files would be overwritten” error”
Can you make sure if there are no untracked files. If present you need to git checkout them first before doing a git rebase.
A better practise would be by doing the below steps.
Assuming you have a new git cloned repository
Create and checkout to a new local branch of your own.
git checkout -b <MyLocalBranch>
Do your change as necessary. Then.
git add . git commit -m <message> git review/push
Once you have pushed in your changes, go back to your master and do a git pull
git checkout master git pull
Come back to your local branch and rebase it.
git checkout <MyLocalBranach> git rebase -i master
Now you are good with your local branch and ready to make changes on your local branch. Also, by doing this you can have multiple local branches without creating conflicts to your master.