问题描述
我对在Ubuntu系统中使用Mercurial安装etckeeper感兴趣。我的原因是我不知道如何使用Git,并且现在不想学习。如果我检查包装说明,那听起来很有希望:
kent@rat:~$ apt-cache search etckeeper
etckeeper - store /etc in git, mercurial, or bzr
我想知道如何从这里继续?我尝试了Googling,但没有找到适用于Ubuntu + etckeeper + Mercurial组合的任何东西。
(如果您知道针对这种情况的好的教程,那么链接是一个很好的答案。不需要re-iterate。)
最佳思路
我在debian和ubuntu上都使用etckeeper。没痛苦
只需执行sudo etckeeper init
,就可以完成!
实际上,您可能需要编辑/etc/etckeeper/etckeeper.conf
以检查是否已选择hg
作为您的VCS命令。但这就是您所要做的。
完成后,etckeeper将开始跟踪您对/etc
中的文件所做的每个更改,并将这些更改提交到本地存储库。每当您对任何东西运行apt-get
以及每晚cron-job时,都会自动发生这种情况。
但是,如果您希望将更改推送到远程存储库,则需要手动执行此操作或设置其他操作来替您完成。
次佳思路
在我的系统(Ubuntu Karmic)上,除了设置VCS="hg"
之外,我还必须编辑/etc/etckeeper/etckeeper.conf
并添加以下内容,否则etckeeper commit
会抱怨缺少用户名:
HG_COMMIT_OPTIONS="-u etckeeper@aeolus"
另外,在/etc/.hg/hgrc
中,我添加了以下内容:
[ui]
username = root@aeolus
这样,当我通过etckeeper进行提交时,该提交的用户名将为etckeeper@aeolus
,如果我通过mercurial手动进行提交,则该用户名将显示为root@aeolus
。