答案1
的“特殊功能”部分XStow主页已过期;例如,GNU Stow 现在支持多个 stow 目录,并在某些上下文中支持正则表达式。 2.x 版本几乎是完全重写,进行了重大重构,改进了两阶段方法,以及一个全面的测试套件。从那时起我添加并更改了很多东西包括支持忽略列表、文件采用、可选禁用折叠(AFAICS XStow 根本不支持折叠,这并不奇怪,因为这是迄今为止最棘手的事情)。
在我无疑有偏见的观点中,编写 XStow 的最初动机是值得怀疑的,或者至少是由现在已经过时的原因驱动的。主页说“Stow 需要 Perl。但是在没有 Perl 可用或尚未安装 Perl 的系统上怎么办?我尝试使用 perlcc 编译 Stow,但失败了”,但实际上有多少系统支持符号链接并且没有预装 Perl? Perl 无处不在。在我看来,对于这种实用程序来说,C++ 绝对是糟糕的语言选择,因为性能远没有代码可维护性那么重要。
也就是说,XStow 似乎确实有一些不错的技巧,我打算通过添加以下内容来为 GNU Stow 窃取至少其中一个技巧安装挂钩dir
至少处理信息合并用例。此外,代码维护在 git 存储库中,我很乐意接受针对github项目。
我还计划在今年某个时候发布 GNU Stow 的新版本,但到目前为止,自上次版本(2.2.0)以来 git 没有太大变化。目前我的首要任务是促进选择性折叠和安装挂钩。
答案2
阅读网页,XStow 是 Stow 在某个时间点的重新实现,因此我建议 XStow 中缺少自 2008 年 9 月 27 日以来添加到 Stow 的任何内容。尽管 XStow 是用 C++ 而不是 Perl 编写的,但它们提供了完全相同的行为(至少),并且提供了一些额外的功能(这破坏了与 Stow 的兼容性)。