我有一个 git 存储库,其中包含一个在 windows 下名称无效的文件:
foo/bar/baz|quux
由于我想在不重新启动的情况下解决问题,因此我尝试了以下命令:
git clone -n ssh://example.com/home/me/repo.git
git mv "foo/bar/baz|quux" "foo/bar/baz-quux"
但我得到的只是:
fatal: bad source, source=foo/bar/baz|quux, destination=foo/bar/baz-quux
我最终在 linux 下运行了该命令,并带有一个签出的 repo(git clone
没有-n
),并且 id 就像一个魅力,所以我猜这个fatal
错误是由于文件没有在 windows 下签出(因为我无法检查)。
那么我将如何运行git mv --index "foo/bar/baz|quux" "foo/bar/baz-quux"
它只修改索引,但忽略文件不在磁盘上的事实?该选项--index
不适用于git mv
,我尝试过-f
但失败并显示相同的消息。