unexpected EOF when trying to fetch from remote
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 25/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- csharp, git
- 領域
- devtools, networking
調査の方向性
Commands.Fetch と FetchOptions から開始し、fetch リクエストが multi_ack_detailed、side-band-64k、include-tag などの機能をどのように通知するかを追跡します。これを動作する OS Git のリクエストと比較し、LibGit2Sharp がこれらのオプションを制御する手段を公開しているか判断します。対応する構成、または Bitbucket 7.21.4 との再現可能なプロトコル非互換性を特定できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
I'm having an issue with a remote repo hosted on a BitBucket v7.21.4. The clone command works just fine, but when I try to fetch a particular branch if fails with LibGit2Sharp.LibGit2SharpException: unexpected EOF.
The issue is constantly reproducible.
Reproduction steps
Example code:
using var repo = new Repository(repositoryPath);
var fetchOpts = new FetchOptions();
fetchOpts.CertificateCheck = (_,_,_) => true;
fetchOpts.CredentialsProvider = (_, _, _) => new UsernamePasswordCredentials() { Username = remoteUser, Password = remotePassword };
fetchOpts.Prune = true;
fetchOpts.TagFetchMode = TagFetchMode.None;
var remote = repo.Network.Remotes["origin"];
Commands.Fetch(repo, remote.Name, [$"+refs/heads/{remoteBranch}:refs/remotes/{remote.Name}/{remoteBranch}"], fetchOpts, null);
Expected behavior
Fetch to complete successfully.
Actual behavior
Unhandled exception. LibGit2Sharp.LibGit2SharpException: unexpected EOF
Below is the trace:
Debug: Sending POST request to https://<repourl>/scm/<proj>/<repo>.git/git-upload-pack
Trace: Sending request:
POST /scm/<proj>/<repo>.git/git-upload-pack HTTP/1.1
User-Agent: git/2.0 (libgit2 1.7.1)
Host: <host>
Accept: application/x-git-upload-pack-result
Content-Type: application/x-git-upload-pack-request
Content-Length: 1124
Authorization: Basic <auth>
Trace: Sending request:
0074want 3edd78a0fa98c3c2361088051ef762b8ae617a7c multi_ack_detailed side-band-64k include-tag thin-pack ofs-delta
00000032have 6bb975022c21ceb358e9686ec47f62f0df5ab76b
0032have 19339ffb0a1a4a31c1ed445155ff5a0819a90404
...
0032have 4fcfbe8283ab4d7df213d4aad49213e078579dd5
0000
Trace: Received:
Unhandled exception. LibGit2Sharp.LibGit2SharpException: unexpected EOF
Below is the the trace from the OS git client fetch from the same remote which works just fine:
$git fetch origin master
...
12:39:35.668070 pkt-line.c:80 packet: fetch> command=fetch
12:39:35.668091 pkt-line.c:80 packet: fetch> agent=git/2.39.2
12:39:35.668095 pkt-line.c:80 packet: fetch> 0001
12:39:35.668098 pkt-line.c:80 packet: fetch> thin-pack
12:39:35.668102 pkt-line.c:80 packet: fetch> ofs-delta
12:39:35.668108 pkt-line.c:80 packet: fetch> want 3edd78a0fa98c3c2361088051ef762b8ae617a7c
12:39:35.668119 pkt-line.c:80 packet: fetch> have 6bb975022c21ceb358e9686ec47f62f0df5ab76b
...
12:39:35.668678 pkt-line.c:80 packet: fetch> have 7bb74cc0c823352f64704ffcf72a1449d7fa355d
12:39:35.668683 pkt-line.c:80 packet: fetch> 0000
I noticed that it sends only thin-pack and ofs-delta arguments as opposed to multi_ack_detailed side-band-64k include-tag thin-pack ofs-delta from libgit2sharp.
Is there a way to control this behavior with code?
Version of LibGit2Sharp (release number or SHA1)
Libgit2sharp v0.29.0
Operating system(s) tested; .NET runtime tested
.NET SDK:
Version: 8.0.101
Commit: 6eceda187b
Workload version: 8.0.100-manifests.69afb982
Runtime Environment:
OS Name: Mac OS X
OS Version: 14.3
OS Platform: Darwin
RID: osx-x64
- 主要言語
- C#
- スター
- 3.5k
- フォーク
- 925
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
libgit2/libgit2sharp のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
libgit2/libgit2sharp#2193 · コメント 2 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
libgit2/libgit2sharp#2192 · コメント 1 件 ·
-
Website is down オープン
難易度 4/5 3〜5日 初心者へのやさしさ 20/100
libgit2/libgit2sharp#2191 · リアクション 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
libgit2/libgit2sharp#2189 · リアクション 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
libgit2/libgit2sharp#2187 · コメント 2 件 ·
libgit2/libgit2sharp の issue をすべて見る
似ている issue
-
bug
難易度 1/5 1時間未満 初心者へのやさしさ 75/100
sillsdev/languageforge-lexbox#2665 ·
-
bug documentation frontend
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
azurenoops/spin_agent#975 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
-
:watch: Not Triaged 11.0 fundamentals/subsvc
難易度 2/5 1〜3時間 初心者へのやさしさ 92/100
dotnet/AspNetCore.Docs#37699 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
SubtitleEdit/subtitleedit#15108 · コメント 1 件 ·