libgit2 / libgit2/libgit2sharp
NameConflictException using Clone with Bare repo
Open
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 3.5k
- Forks
- 925
- PR merge metrics
- No merged PRs in 30d
Description
Reproduction steps
var repoUrl = "https://github.com/me/repo";
var credentials = new UsernamePasswordCredentials
{
Username = "me",
Password = "xxxx"
};
var cloneOptions = new CloneOptions
{
CredentialsProvider = (url, usernameFromUrl, types) => credentials,
IsBare = true
};
var repoPath = @"C:\temp"; // this folder is empty
var repo = new Repository(Repository.Clone(repoUrl, repoPath, cloneOptions));
Expected behavior
repo is assigned a value
Actual behavior
Getting LibGit2Sharp.NameConflictException: 'remote 'origin' already exists'
Version of LibGit2Sharp (release number or SHA1)
0.27.2
Operating system(s) tested; .NET runtime tested
Windows 11, Net 6
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no source files or tests. First reproduce the bare clone with the shown CloneOptions on .NET 6, then trace bare-clone handling and creation of the remote named origin. Done means the clone returns a repository without the NameConflictException, with coverage for this reproduction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, git
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100