我正在尝试确定在一些不同的用例中使用哪个匹配器。最重要的是,我们要复制gitignore解析器的行为。
我们正在考虑使用globby fast-glob或node-glob。但是它们似乎都具有.gitignore默认解析不提供的扩展功能。
即globby使用fast-glob,fast-glob使用micromatch,它公开了自定义功能。并且node-glob似乎也扩展了默认语法。因此,我开始研究链下端的一些地方。
我有点困惑,为什么会有如此多的软件包似乎都在做相同/非常相似的事情。
观察/问题:
第一个要回答的问题是标准git实际使用什么来处理它的gitignore。然后找出哪个软件包最匹配。
答案 0 :(得分:2)
据我记得,这个library comparison一直在进行picomatch。它回答了您所有的问题,甚至更多(完整披露:我是picomatch的作者)。
我有点困惑,为什么会有如此多的软件包看起来都在做相同/非常相似的事情。
难以理解。阅读有关图书馆广泛自述文件的更多信息后,您的混乱就应该消除。每个库都非常详细地解决了您的问题。