1

私は git が初めてで、ブランチを見つけるために使用される git レーンについてもっと知りたいです。Git リポジトリには、同じブランチにいるのか、メイン ブランチにいるのかなどを識別するためのレーン コンセプトがあります。

しかし、最初のブランチ用に初期化されたレーンをチェックすると、「1」として設定されます-メインブランチ、作成された次のブランチは「0」としてマークされます-最初のブランチと次のブランチはレーン「2」、次にレーン3 など...

私はeclispeでegit2.1を使用しているので、

  1. git では、マスター レーンは常に 1 に設定されます。
  2. マスターのレーン値はどこに設定されていますか? egitまたはjgitの一部ですか

そして、egit開発に関するドキュメントを持っている人はいますか:)

編集:

正確な名前を使用しなかった場合は申し訳ありません。eGit のコードをチェックインするまで、レーンに使用されるクラスを知りませんでした。

コードはorg.eclipse.egit.ui.internal.history.CommitGraphTableで見つかりましたgit CommitGraphTable レーンの Google 検索のレーン欠陥に 関連して見つかったいくつかのコード

これらは、レーン オブジェクトとレーン定義を見つけたクラスです。

eGit org.eclipse.egit.ui.internal.history.SWTCommit org.eclipse.egit.ui.internal.history.SWTCommitList.SWTLane

jGit org.eclipse.jgit.revplot.PlotCommitList

では、マスターレーンのレーンがどこに設定されているのか教えてください。

4

2 に答える 2

1

スクリーンショットが「レーン」の意味を明確にするのに役立つかもしれませんが、EGit はブランチに ID を添付せず、単にリストします。

支店を出る

Git と同じで、すべてのブランチのアクティブな HEAD と HEADS を単純に記録します。


編集後、ここでの「レーン」は、ブランチの色を管理するための内部クラス SWTLane または SWTCommitList
を指します。 特定のレーン セットが表示されませんでしmasterた。SWTCommitList で順番に実行されたすべての適切なブランチのクエリのみです。正しい車線を引く。

于 2012-10-30T12:28:41.393 に答える
1

コードをさらに掘り下げたところ、クラス PlotCommitListはコミット ツリー内の各コミット オブジェクトのレーンを設定していました。

このロジックは Jgit ロジックの一部でした

ya @VonCはSWTCommitListについてある程度正しかった

 package org.eclipse.jgit.revplot;

 public class PlotCommitList<L extends PlotLane> extends
    RevCommitList<PlotCommit<L>>{
....
protected void enter(final int index, final PlotCommit<L> currCommit){
//This method contains the logic
}

....

}
于 2012-11-05T11:06:37.140 に答える