0

Windows Server 2008 上の libgit2sharp 0.21.0.176 C#

特定のブランチへの参照を取得する必要があります。

私の Windows マシンでは、GitHub のリモート オリジンからローカル リポジトリを git clone してフレッシュにしました。

libgit2sharp次に、次のコードを実行します。

var localRepo = new Repository({local-path},RepositoryOptions);
var remote = localRepo.Network.Remotes.Add("origin", {remote-repo-uri);
localRepo.Network.Fetch(remote, FetchOptions, Signature, "performing fetch");
var branch = localRepo.Branches[{branch-name}];

しかし、ブランチは GitHub のリモート オリジンに存在するにもかかわらず、コレクションには存在しません。

4

1 に答える 1

1

git と同様に、デフォルト ブランチ (または で指定されたブランチ) のみが、CloneOptions.BranchNameクローン作成時にローカル ヘッドとして作成されます。

他のブランチはフェッチされますが、リモート トラッキング ブランチとしてのみ取得されます。

2 つのオプション:

  • リモートに「origin」という名前が付けられている場合、これらのリモート追跡ブランチにアクセスできますlocalRepo.Branches["origin/{branch-name}"];
  • ローカル ブランチを作成し、リモート ブランチを追跡するように構成します。これを行う方法の例については、BranchFixture.CanSetUpstreamBranch()テストを参照してください。
于 2015-07-08T07:46:44.160 に答える