在hg中,我可以使用hg heads
查看所有当前头部。我仍然无法找到git中的等价物。 git-hg rosetta stone没有给出答案。
至于hg parents
,它只是告诉一个节点的直接祖先,rosetta stone只是读取了非常无益的东西:
git log # you can read all the information you need from there (as long as you already know the answer to the question you're asking)
答案 0 :(得分:10)
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>
并对其进行处理。
由于上述原因,我觉得在git中将hg heads
的等价物称为没有子节点的所有提交是不理想的,但是等效的关闭是{{1} }
答案 1 :(得分:2)
您可以使用git branch
分支查看所有已命名的标题,并为标记查看git tag
。我确信有一种奇特的方式来显示所有头部(即悬空提交),但请记住,这些可能是git在默认设置下收集的垃圾。
<强>更新强>
我刚才意识到这与Mercurial的头部概念无关。这将真正向您显示存储库中的任何命名修订,这些修订可能对您的目的有用或无用。