git-refs
引用的底层访问。
概要
bash
git refs migrate --ref-format=<format> [--no-reflog] [--dry-run]
git refs verify [--strict] [--verbose]
git refs list [--count=<count>] [--shell|--perl|--python|--tcl]
[(--sort=<key>)...] [--format=<format>]
[--include-root-refs] [--points-at=<object>]
[--merged[=<object>]] [--no-merged[=<object>]]
[--contains[=<object>]] [--no-contains[=<object>]]
[(--exclude=<pattern>)...] [--start-after=<marker>]
[ --stdin | (<pattern>...)]
git refs exists <ref>
git refs optimize [--all] [--no-prune] [--auto] [--include <pattern>] [--exclude <pattern>]描述
此命令提供对引用的底层访问。
命令
migrate:在不同格式之间迁移引用存储。verify:验证引用数据库一致性。list:列出仓库中的引用,支持过滤、格式化和排序。此子命令是 git-for-each-ref(1) 的别名,提供相同的功能。exists:检查给定引用是否存在。如果存在返回退出代码 0,如果缺失返回 2,如果查找引用时出现非缺失错误返回 1。optimize:优化引用以提高仓库性能并减少磁盘使用。此子命令是 git-pack-refs(1) 的别名,提供相同的功能。
选项
以下选项特定于 git refs migrate:
--ref-format=<format>:要将引用存储迁移到的引用格式。可以是files(用于带有 packed-refs 的松散文件)或reftable(用于 reftable 格式)。--dry-run:执行迁移,但不修改仓库。迁移的引用将写入单独的目录。--reflog:将 reflog 数据迁移到新后端(默认)。--no-reflog:丢弃 reflog 数据。
以下选项特定于 git refs verify:
--strict:启用更严格的错误检查。这将导致警告被报告为错误。--verbose:验证引用数据库一致性时,输出详细信息。
以下选项特定于 git refs list:
<pattern>...:如果给出一个或多个模式参数,则仅显示与至少一个模式匹配的引用。--stdin:从标准输入读取模式列表。--count=<count>:在显示 <count> 个引用后停止。--sort=<key>:按字段名 <key> 排序。前缀-按值的降序排序。--format[=<format>]:从引用及其指向的对象插值%(fieldname)的字符串。--color[=<when>]:遵守--format选项中指定的任何颜色。--shell、--perl、--python、--tcl:将替换%(fieldname>占位符的字符串用适合指定宿主语言的字符串字面量引用。--points-at=<object>:仅列出指向给定对象的引用。--merged[=<object>]:仅列出其提示可从指定提交可达的引用。--no-merged[=<object>]:仅列出其提示不可达的引用。--contains[=<object>]:仅列出包含给定对象的引用。--no-contains[=<object>]:仅列出不包含给定对象的引用。--ignore-case:排序和过滤引用时不区分大小写。--omit-empty:在格式化引用扩展为空字符串时不打印换行符。--exclude=<excluded-pattern>:仅显示不匹配任何排除模式参数的引用。--include-root-refs:除常规引用外,还列出根引用(HEAD 和伪引用)。--start-after=<marker>:通过跳过指定标记来允许对输出进行分页。
以下选项特定于 git refs optimize:
--all:打包所有引用,包括历史分支。--no-prune:打包后不删除松散引用。--auto:根据引用数据库的当前状态按需打包引用。--include <pattern>:基于 glob(7) 模式打包引用。--exclude <pattern>:不打包匹配给定 glob(7) 模式的引用。
已知限制
引用格式迁移在其当前形式中有几个已知限制:
- 无法迁移具有工作树的仓库。
- 在迁移进行期间无法阻止对仓库的并发写入。
Git
git 套件的一部分
