将Fossil用于系统文件?

时间:2015-02-22 08:00:58

标签: unix freebsd fossil

作为Fossil的新用户,我很好奇使用Fossil来存储来自Unix的/ etc /,/ usr / local / etc等文件,如FreeBSD& amp; OpenBSD的。如果我在多个系统中执行此操作,我想我会创建一个包含每个主机名的分支来跟踪这些文件。

  • Q1:你做过这个吗?您是否更喜欢使用其他VCS来处理系统文件?

  • Q2:多年来Fossil发生了很多变化,我很好奇是否有可能限制谁可以合并分支与主干。从阅读早期的线程来看,这是不可能的,但有两种解决方法:

    a)告诉人们不要合并到主干

    b)让人克隆和后备维护者从他们的回购中获取更改

1 个答案:

答案 0 :(得分:3)

存储在/etc/var/usr/local/etc中的系统配置文件通常只能由root用户编辑。但由于root可以完全访问整个系统,因此错误的命令会产生可怕的后果。

出于这个原因,我通常使用另一个位置来保留已编辑的配置文件,我的主目录中的一个目录,我称之为setup,该目录受git的控制。由于我有多台运行FreeBSD的机器,每台机器都有自己的子目录。对于在多台计算机上使用的配置文件,有一个名为shared的特殊安装子目录。在不同的存储库甚至分支中维护相同文件的多个副本可能需要大量额外的工作。

我的工作流程如下;

  1. 在我的存储库中编辑配置文件。
  2. 将其复制到正确的位置。
  3. 测试更改。如果出现问题,请返回步骤1.
  4. 将更改提交给修订控制系统。复制 将文件提交到适当的位置。
  5. 最初我有一个shell脚本(基本上是install命令列表)来为我安装文件。但我也希望看到工作树和已安装文件之间的差异。

    为方便起见,我写了一个名为deploy的脚本来帮助我。它可以告诉我repo中的哪些文件与已安装的文件不同,并且可以向我显示差异。它还可以将文件安装到适当的位置。