扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
现在您已经在主目录下查验了 config CVS 模块的一个拷贝;我们将以此为出发点。本文中我将使用我的用户名 tzz 以及主目录 /home/tzz,不过,当然,您应该恰当地使用您自己的用户名和目录。
让我们来创建一个单独的文件。CVS 选项文件 cvsrc 看起来比较合适,因为我将会更多地用到 CVS。
清单 3. 创建并添加 cvsrc 文件
|
从此以后,您的所有的 CVS 选项都将位于 ~/config/cvsrc 中,您将更新那个文件而不是 ~/.cvsrc。您所添加的特定选项告诉 CVS 当目录不存在时重新找回目录,以及删除空目录。这通常是用户所期望的。对于其他您希望这样设置的机器来说,您需要再次查验 config 模块,并重新做链接。
清单 4. 查验 config 模块并构造 cvsrc 链接
|
除了刚才您创建的符号链接以外,您可能知道 Linux 也支持硬链接。出于硬链接的局限性,它们不适用于这一模式。例如,假设您创建了一个 ~/.cvsrc 到 ~/config/cvsrc 的硬链接,而后来您又移动了 ~/config/cvsrc (很多条件下会发生这种情况)。~/.cvsrc 文件将仍然持有 ~/config/cvsrc 的原有的旧内容。现在,您再次查验 ~/config/cvsrc。不过,~/.cvsrc 文件将不会被更新。这就是为什么符号链接在这种情形下更好的原因。
让我们假定您修改 cvsrc 以添加更多选项:
清单 5. 修改并提交 cvsrc
|
现在,为了更新您所使用的每一台机器上的 ~/.cvsrc,只需要做下面的工作:
清单 6: 修改并提交 cvsrc
|
这很简单。更令人满意的是,上面所展示的 CVS 更新将更新 ~/config 中的 每一个 文件,所以,使用一个命令您就可以立即使得在这种 CVS 模式下保持的文件成为最新的。这是这里所展示的配置模式的本质;其他的只是起辅助作用。
注意,一旦您查验了一个模块,在其中就会有一个名为“CVS”的目录。CVS 目录中有关于 CVS 的足够的信息,不需要指定 CVSROOT 变量您就可以做更新、提交以及其他 CVS 操作。
自动更新和提交
为了自动更新和提交,我已经编写了一个特别简单的 Perl 程序,maintain.pl。程序中最长的部分是帮助文本,所以您可以想像到它不全是复杂的代码。不管怎样,我将详细描述它,不过不要忘记,如果需要,shell 脚本可以完成同样的任务。
maintain.pl 唯一不做的事情是构造符号链接。由于符号链接只能构造一次,而且在一些系统上您 不 希望大规模构造链接,所以任务的复杂相对于手工完成此任务的简单就一目了然了。我之所以知道是因为我曾经编写了符号链接代码,后来又删除了。
我不得不编写并维持另一个映射到很多操作系统的配置文件。会有很多异常;例如,我使用的 Linux 和 Solaris 系统有着本质上不同的设置。有太多的事情需要考虑,而我发现手工安装链接更为简单。当然,您的体验可能是不同的——我鼓励您去尝试找出最适合您自己的环境的方法。maintain.pl 脚本的开头是按惯例的定义,包括配置选项、命令行参数的加载以及帮助文本。
清单 7. maintain.pl 脚本的预备工作
|
如果您不熟悉 AppConfig 模块,那么您应该查看 参考资料 部分,以获得关于管理配置的实用资料。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者