Виноваты в более ранней версии файла в другом месте - PullRequest
22 голосов
/ 28 сентября 2011

В какой-то момент в моем репозитории git были реорганизованы пути.

Я часто хочу обвинить файл в ревизии перед переездом.

Что за заклинание git вину обвинитьфайл, который не существует в текущем репозитории?

Я пытался:

> git blame new/path/to/file old_rev
fatal: no such path ... in old_rev

> git blame old/path/to/file old_rev
fatal: cannot stat path ... in old_rev

> git blame old_rev:old/path/to/file old_rev
fatal: cannot stat path ... in old_rev

Очевидно, я мог бы просто проверить old_rev и обвинить в соответствующем пути, но я бы предпочел избежать этого.

1 Ответ

22 голосов
/ 28 сентября 2011

Вы можете использовать git blame --follow, чтобы обвинить вас в переименовании.

Я также вижу, что ваши параметры в неправильном порядке, попробуйте следующее:

git blame old_rev -- old/path/to/file
...