2013-10-01 2 views
1

Существует уникальный идентификатор файлов в Git Repository? Этот уникальный идентификатор должен быть одним и тем же после некоторых коммитов (изменение файла), после переименования и перемещения этого файла.Уникальный идентификатор файла в репозитории Git

Там он существует?

Я пробовал git ls-files --debug, но не нашёл уникального идентификатора с указанными выше характеристиками.

ответ

2

Единственный уникальный идентификатор файла («blob») в репозитории git - это SHA-1, но это контрольная сумма содержимого файла (плюс факт, что это файл/blob). Он остается постоянным только тогда, когда содержимое файла остается неизменным. Он не зависит от имени файла , но он зависит от его содержимого , поэтому изменение файла изменит SHA-1.

Вы можете составить свой собственный уникальный идентификатор, но вам также нужно будет сделать свое собственное отслеживание, сопоставляя идентификатор с текущим древовидным именем (или git-name, то есть SHA-1) и меняя его, когда файл переименовывается (или изменяется, соответственно).

1

Нет, их нет. Если вы измените его, это другой файл с точки зрения Git.

Смежные вопросы