首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用LibGit2Sharp从fetch获取远程更改列表

如何使用LibGit2Sharp从fetch获取远程更改列表
EN

Stack Overflow用户
提问于 2017-05-20 03:06:36
回答 1查看 1.7K关注 0票数 1

我能够使用LibGit2Sharp成功地获取、拉、推等文件,但我希望能够列出在进行获取之后更改、添加等的文件。我使用的是https://github.com/libgit2/libgit2sharp/wiki/git-fetch,没有出现错误或异常,logMessage是一个空字符串。

我希望能够显示一个列表,就像Visual在执行提取时所做的那样。

我如何使用LibGit2Sharp来完成这一任务?

编辑:我已经阅读了LibGit2Sharp维基和LibGit2Sharp搭便车指南的Git。虽然我已经尝试了一些可用的命令来检查它们所提供的结果,但我也不确定对应的git命令是什么。如果您熟悉Git,但不熟悉LibGit2Sharp,那么了解和理解哪个命令将提供此信息将是有帮助的,如果您熟悉Git,将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-20 05:37:10

一旦完成了提取,您就可以用

代码语言:javascript
复制
git log ..@{u}

通过@{u}指定您要合并的分支(上游远程跟踪分支,通常是origin/yourbranch)

在LibGitSharp中,这就是LibGit2Sharp/BranchUpdater.cs#UpstreamBranch分支引用的内容(上游分支)

这样,您应该可以列出当前分支头和"UpstreamBranch“之间的逗号,这有点像在第1161期中,但是这个问题列出了正在推送的内容:让我们在这里反转日志参数。

代码语言:javascript
复制
var trackingBranch = repo.Head.TrackedBranch;
var log = repo.Commits.QueryBy(new CommitFilter 
            { IncludeReachableFrom = trackingBranch.Tip.Id, ExcludeReachableFrom = repo.Head.Tip.Id });

var count = log.Count();//Counts the number of log entries

//iterate the commits that represent the difference between your last 
//push to the remote branch and latest commits
foreach (var commit in log)
{
    Console.WriteLine(commit.Message);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44081525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档