Простым подходом было бы:
git cat-file -t $(git hash-object path/to/foo.c)` # Assuming bash syntax...
Это вывело бы blob
, если какой-либо файл, идентичный foo.c
, был зафиксирован в репо (независимо от пути / имени файла), иfatal: git cat-file: could not get object info
если его нет в репо.
Он вычисляет хэш sha-1 вашего входного файла path/to/foo.c
, затем запрашивает тип объекта git, идентифицируемый этим хешем, которыйвыдает сообщение об ошибке, если файл не существует в базе данных объектов git.
Недостатком является то, что он просто отвечает на вопрос, существует ли файл в репо.
Он не сообщает вам путьсоответствующий файл, или которые фиксируют / фиксируют, которые содержат соответствующий файл.