我已经在 Mac 上工作了很长时间并且提交了看起来像这样的文件:
C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
该文件不存在于存储库中。我的存储库实际上位于/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'
我知道这是一条无效路径。我不确定如何更正它。我无法再访问我的 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
我该如何消除这个错误?
答案1
您可以将文件签出到另一个路径,例如当前目录
git checkout -- <path>/<file>
就你的情况来说,应该是
git checkout -- C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
您还可以指定一个目录来提取文件
git checkout-index --prefix=destination/path/ C:/Csmart/files/companies/19/migration/CompanyDataEntry.xls
如果这没有帮助,只需将所有文件导出到新目录中
$ git checkout-index --prefix=git-export-dir/ -a
有关更多信息,请参阅git checkout-索引