自定义目录上的 etckeeper

jwb*_*ley 8 etckeeper

我一直在阅读有关etckeeper,但我不知道您是否可以在 /etc 以外的任何其他目录上使用它。

在任何配置文件(我可以找到)中似乎都没有对 /etc 的引用,所以我保证这是硬编码的,您不能选择要监视的目录。这是真的?我也想让它管理/opt。这能做到吗?

Zor*_*che 16

它就在手册页中

  • 创建目录/foo
  • 用 etckeeper 初始化: etckeeper init -d /foo
  • 提交应用提交到目录: etckeeper commit -d /foo 'message'

但正如 ErikA 提到的,您可以直接使用 git 或您最喜欢的DVCS

  • 使用 etckeeper 的原因是它保留了诸如文件权限之类的元数据。这使它成为 git 的一个非常有趣的升级,可以做很多事情。您还可以将 `etckeeper -d /home/username` 包装在 bash/zsh/fish 别名中,然后您可以例如运行 `homekeeper commit`。 (2认同)
  • 我分叉 etckeeper 以提高其在`/`下的多个路径保持版本控制(使用单个 Git 存储库)的能力。现在,这是一项正在进行的工作,但您可以在 https://github.com/hablutzel1/etckeeper#about-this-fork 中找到有关它的信息。 (2认同)

EEA*_*EAA 5

Etckeeper 只是 Mercurial 或 git 的包装。它为包管理工具提供了一些很好的挂钩,可以在更新后自动获取提交,也可以选择按计划进行提交。/etc 之外很可能不需要此附加功能。

根据您的需求,我只使用 vanilla git (或您熟悉的任何其他版本控制工具)。如果需要,通过 cron 安排定期提交或作为应用程序部署过程的一部分。