5

我有一个 Git 存储库,我不小心在 4 次提交前推送了一个文件,该文件位于(相对于存储库根文件夹的路径):/Core/C:/testoutput/agwqe1s.xml

我是在我的 Linux 机器上执行此操作的,因此创建的实际文件没有任何问题。问题是当我回到我的 Windows 机器时,我无法切换到包含此文件的分支,因为 Windows 只是拒绝创建这样的文件夹。好的,没问题,我在我的 Linux 端删除了文件并提交了它,但即使它也无法正常工作。Git 仍然试图在我的 Windows 机器上创建这个非法文件,我不知道该怎么做。

我知道我可以从头开始重新制作 repo,但是我丢失了整个提交日志历史记录,我想避免这种情况。我在这里有什么选择?

4

1 回答 1

6

您无需签出该分支即可对其进行更新。从有效的分支执行此操作:

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

诀窍是推送到同一个存储库。这就是它的.用途。

于 2012-11-01T18:38:09.070 回答