Сохранение пользовательских метаданных для отдельных файлов в репозитории Git

Я работаю с Git-репозиторием и хотел бы определить пользовательские свойства, которые будут применяться к каждому файлу в репозитории. Эти свойства могут быть обновлены при каждой фиксации. В идеале свойства должны быть легко доступны для поиска и в конечном итоге экспортироваться.

Есть ли простой способ сделать это в Git? Я изучил заметки Git, но, насколько я могу судить, это за коммит, а не за файл.

Благодарю.

2 ответа

Вы можете использовать git notes:

Добавляет, удаляет или читает примечания, прикрепленные к объектам, не касаясь самих объектов.

Объекты также содержат отдельные файлы. Как объясняется в этом ответе, вы бы перечислили файлы в вашем текущем заголовке с git ls-tree HEAD, а затем добавить заметку с git notes add -m "Some text, key-value pairs maybe?" <hash of the file>, Чтобы просмотреть заметки позже, используйте git notes show <hash of the file>,

Очевидным недостатком является то, что при изменении содержимого файла изменяется хэш. Вам придется написать свои собственные сценарии, чтобы просмотреть историю файлов и распечатать все заметки.

Боюсь, что нет встроенной функциональности.

Вы можете поместить атрибуты с пользовательскими именами в .gitattributes, но, вероятно, это не даст большого преимущества по сравнению с простым размещением данных в одном или нескольких файлах в более зрелом формате, таких как json или xml, и фиксацией этих файлов вместе с вашим проектом.

Другие вопросы по тегам