どのように私は最初JGitとブランチのコミットを見つけることができますか?

TheCrafter:

私が最初にEclipseのJGitライブラリを使用して、特定のブランチのコミット見つけたいと思います。例えば、私が持っている場合

master -- a -- c -- d -- e
          \
  feature  b -- f -- g -- h
            \
    another  j -- k -- l

// findBranchRoot() is the magic method we want to create
repository.resolve("feature").findBranchRoot().getId(); // this would return b
repository.resolve("another").findBranchRoot().getId(); // this would return j

それを行うにはどのように誰もが知っていますか?

jthill:

あなたが必要があるとしている問題は、ここでは、コミットが枝「に」ではないこと、そして熊私と一緒です。これを確認するには、あなたが描いたグラフを考えます。それは曖昧です。やむを得ずそう。あなたが描きました

A---C---D---E          master
 \
  B---F---G---H        feature
   \
    J---k---L          another

単にかどうかを判断する方法はありませんB「に」作られたfeatureanother(または、3の問題のためのA「上」を行いました)。

A---C---D---E          master
 \
  B---J---K---L        another
   \
    F---G---H          feature

ショー丁度同じ歴史。それはあなたがそれを解釈することを選択した方法ですべてです。

あなたには、いくつかの外部の行政記録にコミット結びつけたい場合は、それをやるコミットメッセージにマーカーを置くが、Gitリポジトリ自体(および実際の作業に)、それは歴史の構造だということの問題ではなく、どのようにビットこのレポまたはその中で言及されています。

それは時間が来る場合は公開するfeatureか、anotherあなたがコミットプッシュする必要になるだろう、Bそれはすでにいくつかの他の作業の一環としてプッシュされていない限り、いずれかの方法を。祖先事項。ブランチ名にはありません。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=313153&siteId=1
おすすめ