2012-02-27 121 views
10

在hg中,我可以使用hg heads来查看当前所有的头像。我仍然无法在git中找到等价物。 git-hg rosetta stone没有给出答案。什么是hg heads/hg父母的git等价物?

至于hg parents这汞柱只是讲述了一个节点的直系祖先罗塞塔石碑简单地读取非常无益的:

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) 
+1

我相信' git分支'相当于'hg头' – JaredPar 2012-02-27 22:38:24

+0

@JaredPar Mercurial的头部是一个没有孩子的提交。这与分支不同。有些分支可能有孩子。有些没有孩子的承诺可能不是分支机构的负责人。 – 2012-02-27 22:49:50

+0

看起来像一个X-Y问题。你想在Git中做什么?可能会有一个(更好的)等同于你想要做的,而不是与你在Hg中所做的相同。 – manojlds 2012-02-27 23:02:19

回答

10

git rev-list HEADgit rev-list <sha1>git rev-list HEAD -1 -- file是不同形式的hg parents

至于你分离的头的问题等同,做git checkout <sha1>是为提交检查,而不是一般的工作流程。如果你想要一个提交的分支,你必须做git branch <name> <sha1>git checkout -b <name> <sha1>并对其进行处理。

由于上述原因,我觉得这是不理想谈相当于以hg heads在混帐为没有孩子的所有提交,但关闭相当于是git branch

+0

'git rev-list'几乎等同于'hg parents'(或者至少不是这个答案中显示的任何形式);这里是[关于它的一个问题](http://stackoverflow.com/questions/26085248/)。 – 2014-09-28 15:32:42

2

您可以查看所有已命名的头与git branch对分支机构和git tag的标签。我敢肯定,有一种奇特的方式来显示所有的头(即悬挂提交),但请记住,这些可能是由默认设置下的git收集的垃圾。

UPDATE

我才意识到这是真的无关的头在水银的概念。这将真正向您显示存储库中的任何指定修订版,这可能对您的目的有用或不可用。

+2

'git show-ref'会显示你所有的参考,分支和标签。 – Andy 2012-02-27 22:43:35

+0

我认为必须有一些我错过的git概念。当我用hg做这件事情时,这件事很简单,但是用git,我总是会分离头部,并进入我无法推/拉任何东西的状态。这是什么意思,垃圾可以收集?如果我去一个以前提交的修订版,并开始对它进行编码并提交它应该创建一个新的非指定的头部权利?我究竟如何看待这些? – 2012-02-27 22:44:24

+0

@GeorgeMauer当你处于独立的头部状态时,你不应该这么做。 – 2012-02-27 22:46:30

相关问题