libgit2 / libgit2/libgit2sharp

"remote authentication required but no callback set" in pull after upgrading from 0.28 to 0.29

未關閉
#2,115 6 則留言 5 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

主要語言
C#
星號
3.5k
分支
925
PR 合併指標
30 天內沒有已合併 PR

描述

@bording we get the error "remote authentication required but no callback set" after upgrading from 0.28 to 0.29 when connecting to a company internal azure devops server.

This works great with the old version using windows authentication.

Reproduction steps
  • connect to a company internal azure devops server via windows authentication
      Signature signature = GetSignature();
      PullOptions pullOptions = new()
      {
        MergeOptions = new() { FileConflictStrategy = CheckoutFileConflictStrategy.Theirs }
      };
      MergeResult mergeResult = Commands.Pull(Repository, signature, pullOptions);
Expected behavior

Success

Actual behavior

LibGit2Sharp.LibGit2SharpException
HResult=0x80131500
Message=remote authentication required but no callback set
Source=LibGit2Sharp
StackTrace:
at LibGit2Sharp.Core.Ensure.HandleError(Int32 result) in /_/LibGit2Sharp/Core/Ensure.cs:line 154

Version of LibGit2Sharp (release number or SHA1)

0.29

Operating system(s) tested; .NET runtime tested

Windows 11, .NET 4.8

Seems to be related to #2065 and #2087

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

研究方向

先從 Core/Ensure.cs 第154行的 Pull 呼叫和錯誤路徑入手,然後比較 0.28 和 0.29 版本之間的驗證行為。檢視相關 issue #2065 和 #2087,並在使用 .NET 4.8 的 Windows 內部 Azure DevOps 伺服器上重現該問題。當顯示的 pull 使用 Windows 驗證成功執行且沒有 missing-callback exception 時,即表示完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
azure, csharp, git
領域
authentication, backend, operating-systems
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。