git rev-list HEAD
, git rev-list <sha1>
и git rev-list HEAD -1 -- file
являются эквивалентами различных форм hg parents
Что касается вашей отдельной проблемы с HEAD, выполнение git checkout <sha1>
предназначено для проверки фиксации, а не для общего рабочего процесса. Если вы хотите получить ответвление от коммита, вы должны сделать git branch <name> <sha1>
или git checkout -b <name> <sha1>
и работать над ним.
По вышеуказанной причине я считаю, что не стоит говорить об эквиваленте hg heads
в git как обо всех коммитах, у которых нет потомка, но закрывающим эквивалентом является git branch