libgit2 / libgit2/libgit2sharp
"invalid version 0 on git_proxy_options" thrown when natives are built from source
还没有人认领这个 Issue。
- 主要语言
- C#
- 星标
- 3.5k
- 派生
- 925
- PR 合并指标
- 30 天内没有已合并 PR
描述
Hi, I'm currently trying to make a custom build that uses libssh2 instead of exec for SSH, since I don't want OpenSSH windows to spawn as my program makes requests. I changed this flag, then followed through the rest of the compilation steps both for native binaries and lg2s.
I then tried pulling, not on a proxy, using this code:
var fOptions = new FetchOptions ();
fOptions.Prune = UpdaterMod.settings.pruneOld;
var mOptions = new MergeOptions ();
mOptions.CommitOnSuccess = true;
mOptions.FileConflictStrategy = UpdaterMod.settings.onFileConflict;
var sig = new Signature (new Identity (modName, email), DateTimeOffset.Now);
try {
string logHolder = "";
Commands.Fetch (repo, remote.Name, refSpecs, fOptions, logHolder);
if (logHolder.Length > 0)
LogMsg (logHolder, LogMode.Warn);
}
catch (Exception e) {
LogMsg ($"Could not fetch data from remote repo: {e.Message}", LogMode.Error);
return;
}
Expected behavior
The program should attempt to pull without trying to use a proxy.
Actual behavior
The caught exception contains the message in the title.
System information
Windows 10 10.0.19045
AMD Ryzen 5 3600
Other useful information
This issue persists when the flag is switched back to exec
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从报告中的 Windows 构建版本上的 Commands.Fetch 调用(使用 FetchOptions)开始,然后跟踪 native 构建如何处理代理选项和版本验证。使用 custom 和 exec 配置重现 fetch;当不使用代理的 fetch 不再抛出所报告的无效版本异常时,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- csharp, git
- 领域
- tooling
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100