svn +存储库位置

时间:2008-09-30 08:58:00

标签: svn

我即将建立一个通过svn + ssh访问的subversion服务器。我想知道,默认存储库位置在哪里(在unix框上)。

你把它放在

/opt/svn

/home/svn

/usr/subversion

甚至

/svn

或其他地方?

我正在寻找这个地方,大多数人都把它。有会议吗?

编辑:

绝对可以从用户“隐藏”实际的存储库位置。例如(在我的例子中)通过将svnserve可执行文件包装成调用它的方式来包含它:

svnserve -r /var/svn/repos

5 个答案:

答案 0 :(得分:6)

我通常将存储库放在/var下的某个位置,通常位于/var/lib/svn - 我正在尝试关注Filesystem Hierarchy Standard,其中有purpose of /var:< / p> 此处指定了

/var,以便能够以只读方式挂载/usr。曾经进入系统操作期间写入的/usr的所有内容(与安装和软件维护相对)必须位于/var

答案 1 :(得分:3)

/home/svn在这里,主要是因为我认为在某些时候我可能需要svn用户......

答案 2 :(得分:2)

基于新的FHS,您应该将“此系统提供的服务数据”放入/ srv目录中。 FHS中没有任何其他指导,除了将所有服务数据放在该目录中,例如http等。我建议/ srv / svn /.

答案 3 :(得分:2)

就存储库的路径而言,我喜欢在其上分区并挂载一个名为repository的目录;)

  

/存储库

这样我可以使用“df”

轻松检查尺寸
  

是否可以隐藏绝对值   来自用户的路径?

要回答这个问题,是的,但前提是他们没有对该框的完全访问权限。您使用帐户设置它们,让它们生成公钥/私钥以便登录,但您永远不会给他们密码。

然后你将他们的密钥输入/home/<_user>/.ssh/authorized_keys并编辑设置,以便使用所述密钥启动svn-serve。

command="/usr/local/bin/svnserve -t -r /repository/" 

现在在存储库中创建一个项目:

svnadmin create /repository/proj1

使用SVN,您必须授予用户对项目目录的读/写访问权限。然后他们可以查看代码:

svn co svn+ssh://host/proj1

用户永远不会看到或知道存储库的绝对路径。

答案 4 :(得分:1)

绝对应该是/ var。我把我保存在/ var / lib / svn中。 / opt对于保留您可能不一定需要的应用程序非常有用,例如:Firefox或MySql。存储库不是应用程序,因此将其保留在/ opt中没有意义。

与上面的评论一样,您可以参考FHS