从gitignore过滤文件和路径

尼古拉斯·彼得森

我想使用C#查找未被.gitignore(或子目录内的任何嵌套.gitignore文件)过滤的所有文件路径这类似于关于PHP问题我想知道是否有人知道此代码是否已经在网上某个地方可用(在C#中)。

更新:为了回答我要这样做的目的,因此我可以为某些项目运行自己的源文件的定期备份(压缩结果),以使您更加省心。困难的部分是获得一个健壮的.gitignore解析器来获取过滤后的文件路径(并排除其他路径),而又不想太迷恋于了解是否有人已经为我做过这个规范。

夜猫子888

在不完全了解列表的情况下很难提出建议(在构建脚本中使用它,以某种方式处理文件,仅在UI上查看它们等)。

我在C#中找不到一个,但是这个JavaScript gitignore解析器没有很多要转换的代码,它公开了acceptsdenies方法来获取包含或被忽略文件的列表。它有充分的文档记录,具有测试,并且它使用的正则表达式在C#中的效果与在JavaScript中一样。

只要您在运行C#代码的计算机上安装了Git,此答案就可以在C#中使用。

还要注意,Visual StudioGit Source Control Provider插件在IDE中提供了列表,还具有复选框和将某些文件一起提交的功能以及许多其他难以在命令行上完成的功能。

注意:Git源代码管理提供程序是开源的(用C#编写),您可以在此处查看源代码,但是与JavaScript项目相比,反向工程可能涉及更多的工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章