2012-02-27 23 views
10

hgでは、現在のすべてのヘッドを表示するのにhg headsを使用できます。私はまだgitで同等のものを見つけることができませんでした。 git-hg rosetta stoneは答えを出していません。hg heads/hg parentsのgitに相当するものは何ですか?

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 branch'は 'hg heads'に相当します – JaredPar

+0

@JaredPar Mercurialの頭部は子を持たないコミットです。これは支店と同じではありません。いくつかの枝に子供がいるかもしれません。子供がいない場合のコミットは、ブランチの頭ではないかもしれません。 –

+0

X-Y問題のように見えます。 Gitで何をしたいのですか?あなたがHgでやったことと同等のものではなく、あなたがやりたいことと同等の(良い)ものがあるかもしれません。 – manojlds

答えて

10

git rev-list HEADgit rev-list <sha1>git rev-list HEAD -1 -- fileは、検査をコミットしていない一般的なワークフローのためのものですgit checkout <sha1>をやって、あなたのデタッチHEADの問題についてはhg parents

の異なる形の等価物です。ブランチをコミットから外したい場合は、git branch <name> <sha1>またはgit checkout -b <name> <sha1>を実行して作業する必要があります。

ような理由に、私は子供を持っていないすべてのコミットとしてのgitでhg headsと同等の話をするのが理想的ではないことを感じるが、閉じ当量がgit branch

+0

'git rev-list'は' hg parents 'とほとんど同じではありません(少なくともこの回答に示されているフォームにはありません)。ここに[それについての質問](http://stackoverflow.com/questions/26085248/)があります。 –

2

あなたは枝のためgit branchとタグのgit tagですべての名前の頭を見ることができます:HGに単にロゼッタストーンは、単に非常に助けにならないの読み込み、ノードの直接の祖先を伝えhg parentsについては

。すべてのヘッド(つまり、コミット)が表示されるという気がしますが、これらはデフォルト設定のgitでガベージコレクションされる可能性があることに注意してください。

UPDATE

私は、これはMercurialのではヘッドの概念には本当に無関係であることに気づきました。これは本当にあなたの目的のために有用かもしれないし、そうでないかもしれないリポジトリの任意の名前付きリビジョンをあなたに示します。

+2

'git show-ref'はすべてのリファレンス、ブランチ、タグを表示します。 – Andy

+0

私は欠けているいくつかのgitの概念がなければならないと思う。これはhgでやるととてもシンプルですが、gitを使って私は引き離したままの状態になり、私はプッシュ/プル/何もできない状態になります。ゴミは何を集めることができるのですか?私が以前にコミットしたリビジョンに行き、コーディングを開始してコミットを開始すると、新しい名前のないヘッド右を作成する必要がありますか?どのように私はそれらを表示しますか? –

+0

@GeorgeMauerあなたは分離ヘッド状態にあるときに、そのようにコミットするべきではありません。 –

関連する問題