在Windows上Git提交无效的字符

我得到了一个Git仓库,我不小心推送了一个位于(相对于仓库根文件夹的path)的4提交前的文件:/Core/C:/testoutput/agwqe1s.xml

我在我的Linux机器上这样做,所以创build的实际文件没有任何问题。 事情是当我回到我的Windows机器,我不能切换到具有此文件的分支,因为Windows只是拒绝创build这样的文件夹。 好的,没问题,我删除了我的Linux端的文件,并提交它,但即使艰难,它不工作。 Git仍然试图在我的Windows机器上创build这个非法文件,我不知道该怎么做。

我知道我可以从头开始重新制作回购,但之后我失去了整个提交日志的历史,我想避免这种情况。 我在这里有什么select?

您不需要检出该分支来更新它。 从一个工作的分支做到这一点:

 git fetch git push . origin/problembranch:problembranch git checkout problembranch 

诀窍是推到相同的存储库。 那就是这个. 是为了。