ディスプレイをリロードしてみましたか?gitkが少し混乱することがありますが、終了して再起動するか、再読み込み([ファイル] > [再読み込み] 、またはCtrl- F5)すると、よりわかりやすい方法で履歴を再描画できます。
編集:リポジトリが表示されたので、何が起こっているかを確認できます。
いくつかのサイドブランチにも取り組んでいる間、マスターでいくつかの開発を行ったようです。これを行っている間に、master
それらのサイドブランチに数回マージしました。gitk
コミットをリストに表示するため、コミットの線形順序が必要です。分岐履歴がある場合は常に、その履歴を入れることができるいくつかの可能な線形順序があります。たとえば、次の構造です。
/-- c -- e --\
a -- b g -- h
\-- d -- f --/
次のいずれかの方法で注文できます。
- a、b、c、e、d、f、g、h
- a、b、c、d、e、f、g、h
- a、b、c、d、f、e、g、h
- a、b、d、c、e、f、g、h
- a、b、d、c、f、e、g、h
- a、b、d、f、c、e、g、h
デフォルトでgitk
は、トポロジカル順序を使用します。これにより、各ブランチのコミットがグループ化されます。これにより、ブランチの両側のコミットがいつ発生したかに基づいて散在するのではなく、各ブランチのコミットの論理的な進行を確認できます。したがって、たとえば、(1)の順序でそれらを表示する場合があります。
a -- b -- c -- e ------------ g -- h
\----------- d -- f --/
この順序付けは、線形ログを見ているだけの場合は正常に機能しgitk
、ブランチ間をあまり頻繁にマージしない場合(上記の例のように)でも正常に機能します。しかしmaster
、トピックブランチに頻繁にマージして、自分が行ったことを実行すると、これはあなたが見ているような混乱を引き起こします。コミットmaster
が最初に表示され、次にサイドブランチのコミットが表示されますが、サイドブランチに頻繁にマージmaster
されると、長い接続が積み重なって履歴が混乱します。(Gitは実際にはどのコミットがどのブランチからのものであるかを保存しませんが、それらをソートする方法では、各ブランチからのコミットを一緒に保持することになります)。
私が知っているこれに対処する最も簡単な方法は、コミットをgitk
時系列で表示することです。[ビュー] > [ビューの編集... ]を開き、[日付で厳密に並べ替える]オプションをオンにします。これで、履歴がより適切に表示されるはずです。このビューを直接起動するには、--date-order
オプションをに渡すことができますgitk
。