本文整理汇总了C#中NGit.Api.Git.Blame方法的典型用法代码示例。如果您正苦于以下问题:C# Git.Blame方法的具体用法?C# Git.Blame怎么用?C# Git.Blame使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NGit.Api.Git
的用法示例。
在下文中一共展示了Git.Blame方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetAnnotations
public override Annotation[] GetAnnotations (FilePath repositoryPath)
{
var repository = GetRepository (repositoryPath);
RevCommit hc = GetHeadCommit (repository);
if (hc == null)
return new Annotation [0];
var git = new NGit.Api.Git (repository);
var result = git.Blame ().SetFollowFileRenames (true).SetFilePath (repository.ToGitPath (repositoryPath)).Call ();
result.ComputeAll ();
List<Annotation> list = new List<Annotation> ();
for (int i = 0; i < result.GetResultContents ().Size (); i++) {
var commit = result.GetSourceCommit (i);
var author = result.GetSourceAuthor (i);
if (commit != null && author != null) {
string name = string.Format ("{0} <{1}>", author.GetName (), author.GetEmailAddress ());
var commitTime = new DateTime (1970, 1, 1).AddSeconds (commit.CommitTime);
list.Add (new Annotation (commit.Name, name, commitTime));
} else {
list.Add (new Annotation (new string ('0', 20), "<uncommitted>", DateTime.Now));
}
}
return list.ToArray ();
}