Git 部分克隆:如何禁用动态对象获取?
Git partial clone: how to disable dynamic object fetching?
我已经调用了 Git 部分克隆 来克隆没有任何 blob 的存储库:
git clone --filter=blob:none https://server/repo.git
现在我想用这个存储库进行试验,看看哪些操作可以在本地进行,而无需 Git 从 promisor 远程动态获取丢失的对象。是否有一些 Git 配置选项来禁用动态获取,而不是让我 运行 进入“丢失对象”错误?
我会移除遥控器。通过从 .git/config
文件或 运行 git remote remove origin
.
中删除遥控器
对 partial clones 的支持仍在进行中,因此将来可能会有更好的解决方案。
截至目前,Git 只会从 promisor 远程获取丢失的对象。来自 documentation:
Dynamic object fetching will only ask promisor remotes for missing objects. We assume that promisor remotes have a complete view of the repository and can satisfy all such requests.
这被列为限制,因此将来很可能会发生变化。但是,从现在开始,您可以通过简单地告诉 Git origin
遥控器不是承诺者来利用它:
git config remote.origin.promisor false
我已经调用了 Git 部分克隆 来克隆没有任何 blob 的存储库:
git clone --filter=blob:none https://server/repo.git
现在我想用这个存储库进行试验,看看哪些操作可以在本地进行,而无需 Git 从 promisor 远程动态获取丢失的对象。是否有一些 Git 配置选项来禁用动态获取,而不是让我 运行 进入“丢失对象”错误?
我会移除遥控器。通过从 .git/config
文件或 运行 git remote remove origin
.
对 partial clones 的支持仍在进行中,因此将来可能会有更好的解决方案。
截至目前,Git 只会从 promisor 远程获取丢失的对象。来自 documentation:
Dynamic object fetching will only ask promisor remotes for missing objects. We assume that promisor remotes have a complete view of the repository and can satisfy all such requests.
这被列为限制,因此将来很可能会发生变化。但是,从现在开始,您可以通过简单地告诉 Git origin
遥控器不是承诺者来利用它:
git config remote.origin.promisor false