2017-07-18 21 views
2

我正在使用Git存储库,并且想定义自定义属性以应用于存储库中的每个文件。这些属性可以在每次提交时更新。理想情况下,这些属性应该易于搜索并最终导出。将自定义元数据存储在Git存储库中的单个文件中

有没有一种简单的方法来做到这一点在Git?我已经看过Git笔记,但据我可以告诉每个提交不是每个文件。

谢谢。

+0

你能详细说明这些属性的性质是什么吗? –

+0

@TimBiegeleisen属性基本上是针对每个文件存储的一些自定义键值对的数量。确切的属性还没有决定,因为我想确保我想要的可以先完成。诸如名称,上下文,标签,目的等是潜在的属性。总是会是字符串,但。 – user5754

回答

2

恐怕没有内置功能。

您可以将自定义名称的属性设置为.gitattributes,但与仅将数据放入一个或多个像json或xml这样更成熟的格式的文件并将这些文件提交到项目中相比,它可能不会带来太多好处。

2

可以在事实上使用git notes

添加,删除或读取粘附对象笔记,不接触对象本身。

对象也包含单个文件。如this answer中所解释的,您可以使用git ls-tree HEAD列出当前HEAD中的文件,然后使用git notes add -m "Some text, key-value pairs maybe?" <hash of the file>添加注释。要稍后查看笔记,请使用git notes show <hash of the file>

一个明显的缺点是,当您更改文件内容时,哈希值会发生变化。您将不得不编写自己的脚本来遍历文件历史记录并打印所有笔记。

相关问题