【问题标题】:how to fetch only commits history, not files using git如何仅获取提交历史记录,而不是使用 git 的文件
【发布时间】:2017-05-03 02:12:18
【问题描述】:

有没有办法只获取历史记录?有时存储库很大,下载它需要很长时间。

我不需要文件,我只需要使用 git log 和 git show 查找提交历史记录。

【问题讨论】:

  • “仅获取提交历史记录”是什么意思?这与 Git 默认做的有什么不同? (考虑一下:如果您可以查看存储库的历史记录,那么您就会拥有每个修订版的内容。)

标签: git file repository clone


【解决方案1】:

不,如果您想在本地查看所有历史记录,您需要克隆 所有 更改。
您只需在 bare repo (git clone --bare) 中执行此操作,即可不签出默认分支 HEAD。

但这并不意味着下载 less 数据:只有浅层克隆会下载更少,但这意味着部分历史记录。

【讨论】:

    【解决方案2】:

    不,你不能。

    在 Git 存储库中,提交和文件是分开管理的。所以应该可以实现一个只获取提交的功能,但是这样的功能还没有实现。

    请注意,存储库中的提交仅包含git show -q <commit> 显示的信息。 因此,如果要实现这样的功能,您将无法在该功能获取的存储库中看到差异。

    【讨论】:

      猜你喜欢
      • 2021-09-14
      • 1970-01-01
      • 2013-08-02
      • 2014-11-25
      • 1970-01-01
      • 2015-04-20
      • 2011-11-14
      • 1970-01-01
      • 2012-04-06
      相关资源
      最近更新 更多