libgit2 / libgit2/libgit2sharp

LibGit2Sharp.LibGit2SharpException | too many redirects or authentication replays

未关闭
#2,117 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
C#
星标
3.5k
派生
925
PR 合并指标
30 天内没有已合并 PR

描述

I am using LibGit2Sharp (version 0.28.0) with a Personal Access Token to access AZURE Repository.

UsernamePasswordCredentials =>
{
Username = "pat",
Password = PersonalAccessToken
}

CustomHeader => "Authorization: Basic {Convert.ToBase64String(Encoding.UTF8.GetBytes($":{PersonalAccessToken}"))}"

Everything was working as expected until last week, when I started encountering exceptions while trying to interact with the remote repository (e.g., clone, pull, push).

Clone failed. | LibGit2Sharp.LibGit2SharpException | too many redirects or authentication replays
at LibGit2Sharp.Core.Ensure.HandleError(Int32 result) in /
/LibGit2Sharp/Core/Ensure.cs:line 154
at LibGit2Sharp.Core.Ensure.ZeroResult(Int32 result) in //LibGit2Sharp/Core/Ensure.cs:line 172
at LibGit2Sharp.Core.Proxy.git_clone(String url, String workdir, GitCloneOptions& opts) in /
/LibGit2Sharp/Core/Proxy.cs:line 278
at LibGit2Sharp.Repository.Clone(String sourceUrl, String workdirPath, CloneOptions options) in //LibGit2Sharp/Repository.cs:line 824

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 Core/Ensure.cs、Core/Proxy.cs 和 Repository.cs 中报告的调用路径开始,重点关注 LibGit2Sharp 0.28.0 中的 Repository.Clone。使用所示的凭据和标头重现对 Azure 仓库的身份验证失败,然后记录原因,并验证 clone、pull 和 push 不再产生所报告的异常。

由索引模型根据 Issue 内容生成。

评估

技术栈
azure, csharp, git
领域
authentication
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
32/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。