C# 如何使用libgit2sharp向主git分支递归添加文件
是否有一种简单的方法可以使用libgit2sharp递归地添加文件夹及其子文件夹中的所有文件?我试过:C# 如何使用libgit2sharp向主git分支递归添加文件,c#,git,libgit2sharp,C#,Git,Libgit2sharp,是否有一种简单的方法可以使用libgit2sharp递归地添加文件夹及其子文件夹中的所有文件?我试过: r.Stage("*"); 但当有多个文件夹和文件时,它似乎无法正常工作。浏览所有文件并添加以下文件的最佳方式是: r.Stage(path_to_file) 我想将文件添加到git存储库的“主”分支。其中一个Stage方法包括一个IEnumerable,用于将文件发送到Stage,因此您可以在将该列表传递到Stage之前构建该列表,而不是对每个文件调用一次Stage i、 e.抓取扩展名
r.Stage("*");
但当有多个文件夹和文件时,它似乎无法正常工作。浏览所有文件并添加以下文件的最佳方式是:
r.Stage(path_to_file)
我想将文件添加到git存储库的“主”分支。其中一个
Stage
方法包括一个IEnumerable
,用于将文件发送到Stage,因此您可以在将该列表传递到Stage
之前构建该列表,而不是对每个文件调用一次Stage
i、 e.抓取扩展名为.cs
的所有文件:
var files = Directory.GetFiles (repo.Info.WorkingDirectory, "*.cs", SearchOption.AllDirectories);
repo.Stage (files);
需要一个master
分支
repo.CreateBranch("master");
需要签出现有的master
分支:
repo.Checkout ("master");
比如说.gitignore中的一些.cs文件,如果我用这种方式添加它们,它会被提交吗?您需要通过IsPathIgnored()方法过滤您的文件列表,因为Stage()是一个显式操作,就像通过
git
进行操作一样,您可以通过-f
选项来提交.gitignore中的文件。