镜像 git 回购是否有可能错过提交?

Is it possible for a mirrored git repo miss commits?

在第 1 天,有人将一些提交推送到我的 GitHub 存储库中。第 2 天,我使用 git clone --mirror 制作了 repo 的镜像克隆。然后,我从镜像克隆到本地,查看内容。这两个提交都没有显示在日志中或文件的实际内容中。看起来好像这两个提交从未存在过。不幸的是,我在镜像后重写了 repo 的历史记录,所以我无法返回并进行交叉检查。那么,镜像克隆是否有可能丢失提交,或者我应该在其他地方寻找问题?

默认情况下,本地克隆将签出 master 分支。

如果提交被推送到不同的分支:

  • 该分支仍然存在于镜像克隆中
  • 该分支列在本地克隆的远程分支中 (git branch -avv)

但默认情况下不会签出。

Unfortunately, I rewrote the history for the repo after I mirrored it,

您仍然可以在git reflog中找到旧历史,并在旧历史SHA1上创建一个临时分支。

另请参阅“Duplicating a repository”。