Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

unexpected EOF when trying to fetch from remote

Offen
#2,080 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
csharp, git
Bereich
devtools, networking

Rechercherichtung

Beginne bei Commands.Fetch und FetchOptions und verfolge anschließend, wie die Fetch-Anfrage Fähigkeiten wie multi_ack_detailed, side-band-64k und include-tag ankündigt. Vergleiche dies mit der funktionierenden OS-Git-Anfrage und ermittle, ob LibGit2Sharp Kontrolle über diese Optionen bietet; abgeschlossen ist die Aufgabe, wenn eine unterstützte Konfiguration oder eine reproduzierbare Protokollinkompatibilität mit Bitbucket 7.21.4 identifiziert wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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

Vorherrschende Sprache
C#
Sterne
3.5k
Forks
925
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus libgit2/libgit2sharp

Alle Issues in libgit2/libgit2sharp

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.