我想将我的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
答案 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