【问题标题】:Files were not listed with git status and got lost after a commit文件未列出 git status 并在提交后丢失
【发布时间】:2020-01-31 10:42:18
【问题描述】:

我从本地存储库中丢失了文件。使用 git 后的“错误”。我试图理解这个错误并尽可能撤消它。我按顺序做的是:

git status
git add -A
git commit -m "some message"
git push origin master

奇怪的是,我有一些新文件(自上次提交以来)没有被提交和推送,现在在我的本地仓库中不存在。

深入研究,我发现我的 git status 并没有首先列出这些文件。这些是我丢失的文件。为什么会这样?有没有办法让他们回来?

我有git版本1.8.3.1

【问题讨论】:

  • 如果文件已经您的git status 之前消失了,我们几乎无法猜测问题出在哪里。您能否尝试提供一些以前操作的历史记录?
  • 这些命令都不会导致任何文件被删除。发生的任何事情都不是由您在问题中列出的内容引起的。

标签: linux git github


【解决方案1】:

如果您在任何时候都没有将文件添加到 git,那么您不太可能使用 git 来恢复它们。您可以通过这个方便的“单线”查看它们是否在您的存储库中

alias gitobjects="git rev-list --objects --all | git cat-file --batch-check='%(objecttype) %
       │ (objectname) %(objectsize) %(rest)' | sed -n 's/^blob //p' | sort --numeric-sort --key=2 | c
       │ ut -c 1-12,41- | numfmt --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest"
gitobjects | grep "myfile"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-12
    • 2021-03-26
    • 2011-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多