Git - 错误无效路径

set*_*thu 9 windows mac git

我在 mac 上工作了很长时间,并提交了它看起来像这样的文件:

C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
Run Code Online (Sandbox Code Playgroud)

该文件在存储库中不存在。我的存储库实际上位于/Users/Sethuram/Development/Csmart/workspaces/csmart. 看起来我可能以某种方式将具有该名称的文件签C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls入了我的 git 存储库并将其推送。

现在我试图在我的 Windows 机器上克隆这个 repo,我收到如下错误:

error: Invalid path 'C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls'
Run Code Online (Sandbox Code Playgroud)

我理解它是一个无效的路径。我不知道如何纠正它。我无法再访问我的 mac 以从那里删除和推送。

在 Windows 框中,此文件显示为我需要提交的更改:

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       deleted:    C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
Run Code Online (Sandbox Code Playgroud)

我如何摆脱这个错误?

han*_*xue 3

您可以将文件检出到其他路径,例如当前目录

git checkout -- <path>/<file>
Run Code Online (Sandbox Code Playgroud)

在你的情况下,应该是

git checkout -- C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
Run Code Online (Sandbox Code Playgroud)

您还可以指定一个目录来提取文件

git checkout-index --prefix=destination/path/ C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
Run Code Online (Sandbox Code Playgroud)

如果这没有帮助,只需将所有文件导出到新目录中

$ git checkout-index --prefix=git-export-dir/ -a
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅git checkout-index的文档