【问题标题】:Why I can't delete files in git?为什么我不能删除 git 中的文件?
【发布时间】:2019-05-30 22:03:27
【问题描述】:

为什么我不能删除 git 中的文件?当我写$ git rm Food101.mlmodel git 说-fatal: pathspec 'Food101.mlmodel' did not match any files。但是当我写git push git 说时,Food101.mlmodel 非常大。如何解决?

【问题讨论】:

  • 这意味着要删除的 repo 中不存在文件。尝试增加缓冲区
  • 你能在git ls-files的输出中看到你的文件吗?
  • 试试这个推送大文件stackoverflow.com/q/44780221/1544977
  • @JerzyPawlikowski,我不能
  • 该文件似乎不在仓库中,因此您无法删除它。然而git push 发送提交而不是文件。是否有可能您正在推送多个提交,并且在其中一个提交中添加了大文件,而在另一个提交中您删除了它?

标签: git github


【解决方案1】:

乍一看,您似乎误解了git rm 的作用。

Food101.mlmodel 包含在至少一个提交中。也就是说,您已经调用了git add Food101.mlmodelgit commit。你得到的错误/警告是你然后git push

git rm 永远不会从以前的提交中删除文件。它只会删除准备提交不再包含它的代码版本的文件。这听起来不像你想要的。

听起来您需要重新编写提交历史记录,以便它根本不包含Food101.mlmodel。为此,我建议您寻找有关如何“变基”您的提交以删除文件的答案。或者,如果它仅包含在您的最后一两次提交中,您可能更愿意简单地使用 git reset HEAD~ 来退回提交,并重新提交您的更改减去大文件。

【讨论】:

    猜你喜欢
    • 2019-02-02
    • 2016-01-15
    • 2016-09-13
    • 1970-01-01
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-09
    相关资源
    最近更新 更多