2016-04-29 6 views
1

私は2つのブランチマスターとデベルを持っていますが、通常はより多くのコミットをマスターしています。共通の祖先のところまで開発中のコミットのログを取得するにはどうすればよいですか。あなたがdevelブランチに入っているときにインタラクティブなrebase masterを呼び出すときに表示されるものと同じリスト。ブランチにあるコミットのログを表示します

、これは動作しません:

git log devel..master 
+0

あなたはちょうど注文をしています。 [Mortの解答](http://stackoverflow.com/a/36946434/1256452)を参照してください(図をメモしておきましょう:コミットグラフの断片を最初に描画すると、Gitでほとんどの場合役に立ちます)。 – torek

答えて

2

。これはあなたが必要なすべてです。

git log master..devel 

---A---B---C---D devel 
      \ 
      \---E---F---F master 

git log master..develそれについて考えてはgit log ^master develと同じ意味します。では、マスターの歴史の中ではなく、デベールの歴史には何がありますか? D

1

はそれを見つけた、私はこのコマンドを実行する必要があります。

git log $(git merge-base HEAD master)..HEAD 

私はdevelの枝にいるよ

+0

あなたが投稿したときに私はちょうどこの答えを書いていました:-(あなたは約10秒で私を退治しました。 – CodeWizard

0

マージベースを見つける必要があります。

これはgitのは、最後にあなたが

git log $(git merge-base <branch1> <branch2>)..branch2 

他のいくつかの選択肢からフォークているコミットを見つける方法です:merge-base答えはそれ自体は間違っていないが、それは必要ありません

git log ^<branch1> <branch2> 
git log ^<branch2> <branch1> 
git diff <branch1> <branch2> 
関連する問題