使用 LibGit2Sharp 查找 sha 提交的正确方法
Proper way to find commit by sha with LibGit2Sharp
存储库有几种类型的提交:
- 作为分支负责人的提交
- 标记引用的提交
- 第 1、2 和 3 点的提交父项。
如何通过 SHA 编号正确找到提交?
我目前的解决方案:
return (Commit)repo.ObjectDatabase
.First(o =>
o.GetType() == typeof(Commit) &&
o.Sha.Equals(shortSha, StringComparison.InvariantCultureIgnoreCase));
我当前的解决方案遍历所有 git 个对象,搜索需要一段时间。
我想这里一定有更好的方法。
return repo.Lookup<Commit>(sha);
存储库有几种类型的提交:
- 作为分支负责人的提交
- 标记引用的提交
- 第 1、2 和 3 点的提交父项。
如何通过 SHA 编号正确找到提交?
我目前的解决方案:
return (Commit)repo.ObjectDatabase
.First(o =>
o.GetType() == typeof(Commit) &&
o.Sha.Equals(shortSha, StringComparison.InvariantCultureIgnoreCase));
我当前的解决方案遍历所有 git 个对象,搜索需要一段时间。
我想这里一定有更好的方法。
return repo.Lookup<Commit>(sha);