libgit2 / libgit2/libgit2sharp
Remotes are sometimes not returned for worktree
オープン
まだ誰も着手していません。
- 主要言語
- C#
- スター
- 3.5k
- フォーク
- 925
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Reproduction steps
- Create repository with remote and commit.
- Create branch and create a worktree from that branch.
- Copy the path to worktree and run the following code:
var worktreePath = "Here is your worktree path";
var repositoryPath = Repository.Discover(worktreePath);
var repo = new Repository(repositoryPath);
var before = repo.Network.Remotes.ToArray();
_ = repo.Head.RemoteName;
var after = repo.Network.Remotes.ToArray();
Expected behavior
Both before and after variable contain remote.
Actual behavior
The before variable contains remote, after is empty.
Version of LibGit2Sharp (release number or SHA1)
Latest master: 7f59d22c4fdb7b3d14511aca567e64eefaa43ab2
Operating system(s) tested; .NET runtime tested
Windows, .NET Framework 462 and .NET Core 2.1. I believe it doesn't matter.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず、報告された C# の再現を最新の master で実行し、リンクされた worktree を使って Repository.Discover、repo.Network.Remotes、repo.Head.RemoteName に焦点を当てます。Head.RemoteName へのアクセスによって remotes の結果が変わる理由を追跡します。実行前と実行後の両方にリポジトリの remote が含まれていれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- csharp, git
- 領域
- tooling
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 45/100