Почему я не могу найти git log of merge commit в моем репозитории - PullRequest
0 голосов
/ 18 мая 2018

Я приведу непосредственно пример проблемы.

Я пытаюсь сделать git log коммита, который мы могли бы найти в git онлайн, но в локальном он выдает ошибку неизвестной ревизии или пути.

Пример: commit: 06cf1bf

это ссылка онлайн: https://github.com/dropwizard/dropwizard/commit/06cf1bf254dc1edf9faa398be099332e00f4778e

но когда я делаю

git log $ commit

Не могу найти

Ответы [ 3 ]

0 голосов
/ 18 мая 2018

Когда вы смотрите на коммит в GitHub (например, dropwizard/dropwizard коммит 117cd08 ), вы видите ветвь, частью которой он является.

Коммит, на который вы ссылаетесь (06cf1bf2 ) не имеет ветки, ссылающейся на него.
Несмотря на то, что он напрямую доступен на GitHub, он не может быть частью обычного git clone.
Возможно, недавний git push --force переписал часть историиэтого репо, делая коммит частью reflog удаленного репо.

0 голосов
/ 18 мая 2018

На самом деле, я думаю, что я решил проблему.Это может быть виртуальный коммит, который не является частью исходного репозитория.Спасибо за ваши ответы.Это ссылка для более подробного объяснения от GitHub:

https://help.github.com/articles/commit-exists-on-github-but-not-in-my-local-clone/
0 голосов
/ 18 мая 2018

Вы уверены, что сначала загрузили этот удаленный контент?Попробуйте

git fetch

или

git remote update

…, чтобы синхронизировать локальный репозиторий с удаленным, и повторите попытку.

Вы также должны проверить, что находится в $commit.Имейте в виду, что эти команды не будут автоматически объединять этот контент с вашими локальными ветвями (git pull будет), но как только объект будет возвращен в вашу локальную коллекцию объектов, вы сможете вызвать его по сумме SHA1.

...