libgit2 / libgit2/libgit2sharp
Repository.Init wants to write to workingDirectoryPath
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C#
- Sterne
- 3.5k
- Forks
- 925
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Reproduction steps
Run the following code with workingDirectoryPath set to a write-protected directory path and gitDirectoryPath set to a writable directory path:
Lib2GitSharp.Repository.Init(workingDirectoryPath: "/", gitDirectoryPath: "/some/dir/.git")
Expected behavior
The Init() call works exactly as this git command: git --git-dir /some/dir/.git --work-tree /:
- it creates a .git repository directory at
/some/dir/.gitwith its config'score.worktreeset to/ - it does not touch the
--work-treedirectory/in any way and thus does not need write permissions in this directory
Actual behavior
An Exception of type Lib2GitException is thrown:failed to initialize repository with template '.git': Permission denied
Version of LibGit2Sharp (release number or SHA1)
0.26.2 (NuGet)
Operating system(s) tested; .NET runtime tested
Linux 5.9.14-arch1-1 #1 SMP PREEMPT Sat, 12 Dec 2020 14:37:12 +0000 x86_64 GNU/Linux
Microsoft.NETCore.App 3.1.8
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne am Einstiegspunkt Repository.Init und reproduziere das Problem mit einem schreibgeschützten workingDirectoryPath und einem beschreibbaren gitDirectoryPath. Als erledigt gilt die Aufgabe, wenn die Initialisierung das Repository erstellt und core.worktree auf das Arbeitsverzeichnis setzt, ohne zu versuchen, dorthin zu schreiben, entsprechend dem beschriebenen Verhalten des git-Befehls.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp, git
- Bereich
- api, backend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 35/100