【发布时间】:2013-01-12 17:18:19
【问题描述】:
有没有办法列出已获取但未使用 LibGit2Sharp 合并的提交?
例如我可以运行以下 git 命令:
C:\Users\Tom\SourceLog>git log origin
commit f3beb4960b2f4bf5641d5b512b5b8c3081512a56
Author: Tom Hunter
Date: Wed Jan 9 22:58:51 2013 +0000
Rollback change to icon
Seemed to crash on windows xp for some reason..
commit d95f29a6cbfea9cb6009c3095a67d71f86d9e8bd
Author: Tom Hunter
Date: Mon Jan 7 21:34:36 2013 +0000
Updating Icon
commit 8785ed4ff3c46bef46ea6e2398c115b4b0203b2c
Author: Tom Hunter
Date: Mon Jan 7 21:22:54 2013 +0000
Fixing tests
Moved GenerateFlowDocuments method to LogEntry class.
Have somehow managed to greatly simplify tests..
...
前两个提交尚未合并到我的本地存储库中。 IE。如果我省略 origin,这就是我得到的:
C:\Users\Tom\SourceLog>git log
commit 8785ed4ff3c46bef46ea6e2398c115b4b0203b2c
Author: Tom Hunter
Date: Mon Jan 7 21:22:54 2013 +0000
Fixing tests
Moved GenerateFlowDocuments method to LogEntry class.
Have somehow managed to greatly simplify tests..
...
下面的代码只给了我 8785ed。如何获取包含尚未合并的提交的列表?
using (var repo = new Repository(@"C:\Users\Tom\SourceLog"))
{
var c = repo.Commits.First();
}
【问题讨论】:
-
你可以试试
repo.Branches["origin"].Commits.First()... -
谢谢@nemesv,试过了,现在我得到:无法打开'C:/Users/Tom/SourceLog/.git/refs/remotes/origin':访问被拒绝。我可以在 Windows 资源管理器中打开这个目录。有什么想法吗?
-
如上述答案中所述,正确用法是:
repo.Branches["origin/HEAD"].Commits.First() -
Bingo - 这行得通,谢谢! (如果您添加为答案,我会接受)
标签: c# git libgit2sharp