怎么做'化石'相关目录上的命令?

时间:2012-12-09 13:28:40

标签: version-control fossil

我想将我的linux配置保存在fossil scm系统中。

这是我在初始阶段所做的。

$ cd /
$ fossil new b.fsl
$ fossil open b.fsl
$ fossil add etc/group
$ fossil add boot/grub/menu.lst
$ fossil ci -m 'init commit'

我想做一些事情(像hg / git一样操作)。

$ cd etc
$ fossil status group
$ fossil add motd

它将显示错误消息:

fossil: current directory is not within an open checkout

所以,我的临时解决方案是

$ cd /
$ fossil status etc/group
$ fossil add etc/motd
$ fossil add /etc/motd # this line will cause problem

对于我的git / hg经验,它应该有用。

$ cd /
$ hg init
$ hg add etc/group boot/grub/menu.lst
$ hg ci -m 'init commit'
$ cd etc
$ hg status group  # it works
$ hg add motd # it works too

3 个答案:

答案 0 :(得分:2)

在命令之前

$ fossil new b.fsl

输入命令

$ cd etc

如果您希望化石仓库存储在另一个文件夹中,请更改命令

$ fossil new b.fsl
$ fossil open b.fsl

$ fossil new path_to_repo/b.fsl
$ fossil open path_to_repo/b.fsl

答案 1 :(得分:2)

所有提到的命令“add”和“status”以及当结帐目录设置在结账目录树内某处时,必须执行与结账相关的所有化石命令。

您不能自己将checkout目录指定为命令行选项。

似乎化石中存在一个错误(或故意引入的功能),阻止它在根目录下搜索打开的结帐文件(“.fslchkout”或“ FOSSIL ”)。这就是为什么在这种情况下,当您在此结帐时执行命令时,您必须位于根目录中。

当然,在这种情况下,化石的所有处理都必须具有root权限。否则,即使在根目录中,您也会收到“not in checkout”错误。

答案 2 :(得分:0)

User Guide详细介绍了这种情况,我全心全意地推荐。

http://www.fossil-scm.org/schimpf-book/home

特别是,请参阅标题为“单个用户”的第2部分中的fossilbook.pdf版本2.0,该部分以:

开头
  

我有一个名为FOSSIL的目录,其中保存了我的所有存储库,Fossil并不关心,但它可以帮助我将它们保存在一个地方,以便我可以备份它们。

那里的第一个命令显示了如何调用相对目录:

$ fossil new ../FOSSIL/FossilBook.fossil