简体中文 ▾ 主题 ▾ 最新版本 ▾ git-upload-archive 最后更新于 2.39.0

名称

git-upload-archive - 将归档发送回 git-archive

概要

git upload-archive <repository>

描述

git archive --remote 调用,并通过 Git 协议将生成的归档发送到另一端。

此命令通常不直接由最终用户调用。该协议的用户界面在 git archive 这一侧,这对程序旨在用于从远程仓库获取归档。

安全性

为了保护已从历史记录中删除但可能尚未修剪的对象的隐私,git-upload-archive 避免为无法从仓库引用(refs)访问到的提交和树提供归档。然而,由于计算对象可达性计算成本高昂,git-upload-archive 实施了一套更严格但更容易检查的规则

  1. 客户端可以请求直接由引用(ref)指向的提交或树。例如,git archive --remote=origin v1.0

  2. 客户端可以使用 ref:path 语法请求提交或树中的子树。例如,git archive --remote=origin v1.0:Documentation

  3. 客户端允许使用其他 SHA-1 表达式,即使最终结果是可达的。例如,无论是像 master^ 这样的相对提交,还是像 abcd1234 这样的字面 SHA-1 都不允许,即使结果可以从引用(refs)访问到。

请注意,规则 3 禁止了许多没有隐私影响的情况。这些规则在 Git 的未来版本中可能会有所更改,并且通过 git archive --remote 访问的服务器可能不会完全遵循这些规则。

如果配置选项 uploadArchive.allowUnreachable 为 true,则这些规则将被忽略,客户端可以使用任意 SHA-1 表达式。如果您不关心不可达对象的隐私,或者您的对象数据库已经可以通过非智能 HTTP 方式公开访问,那么这会很有用。

选项

<仓库>

从中获取 tar 归档的仓库。

GIT

Git[1] 套件的一部分

scroll-to-top