如何在远程存储库上使用 git bisect?

Posted

技术标签:

【中文标题】如何在远程存储库上使用 git bisect?【英文标题】:How to use git bisect on a remote repository? 【发布时间】:2020-10-21 05:42:53 【问题描述】:

我正在创建一个 Python 模块,允许用户在用户指定的存储库上运行 git bisect,但我不太清楚如何使 git bisect 为远程存储库工作,一个不在机器上的存储库调用函数。我不想每次都使用 git clone ,因为这会违反直觉并且会占用大量磁盘空间。有没有办法在远程仓库上使用 git bisect?

【问题讨论】:

【参考方案1】:

不,没有。 git bisect 需要工作树或索引,因为您需要通过某种方式访问​​特定修订版的内容以对其进行测试。这必然要求您的系统上有一个存储库。

您可以使用来自最新版本的 Git 的部分克隆来执行 git clone --filter=blob:none 以仅克隆树和提交,然后在结帐时获取任何必要的 blob。这将减少克隆时间,但需要您在线并在此过程中访问 repo 以获取所需的 blob。

【讨论】:

以上是关于如何在远程存储库上使用 git bisect?的主要内容,如果未能解决你的问题,请参考以下文章

在远程存储库上提交历史记录

删除不再在远程存储库上的本地 git 标签

如何在 git 存储库上正确使用组文件权限?

如何在远程存储库上运行 hg recover 命令

git bisect 如何选择一个没有第一个好的提交作为祖先的提交? (使用--first-parent)

如何在旧代码库上使用 gitversion