简体中文 ▾ 主题 ▾ 最新版本 ▾ git-hash-object 最后更新于 2.43.0

名称

git-hash-object - 计算对象 ID 并可选地从文件创建对象

概要

git hash-object [-t <type>] [-w] [--path=<file> | --no-filters]
		[--stdin [--literally]] [--] <file>…​
git hash-object [-t <type>] [-w] --stdin-paths [--no-filters]

描述

计算具有指定类型且内容来自命名文件(可以位于工作树之外)的对象的值,并可选地将生成对象写入对象数据库。将对象 ID 报告给其标准输出。当未指定 <type> 时,默认为“blob”。

选项

-t <type>

指定要创建的对象类型(默认:“blob”)。可能的值为 committreeblobtag

-w

实际将对象写入对象数据库。

--stdin

从标准输入读取对象,而不是从文件读取。

--stdin-paths

从标准输入读取文件名,每行一个,而不是从命令行读取。

--path

像对象位于给定路径一样对其进行哈希处理。文件位置不直接影响哈希值,但路径用于确定在将对象放入对象数据库之前应应用哪些 Git 过滤器。应用过滤器后,放入对象数据库的实际 blob 可能与给定文件不同。此选项主要用于对工作目录外的临时文件或从 stdin 读取的文件进行哈希处理。

--no-filters

按原样哈希内容,忽略任何可能通过属性机制选择的输入过滤器,包括换行符转换。如果文件是从标准输入读取的,则始终隐含此选项,除非给出了 --path 选项。

--literally

允许 --stdin 将任何垃圾数据哈希到一个松散对象中,该对象可能无法通过标准对象解析或 git-fsck 检查。这对于压力测试 Git 本身或重现遇到的损坏或伪对象特征非常有用。

GIT

Git[1] 套件的一部分