gpt4 book ai didi

apache - 在我的 GoDaddy CentOS 专用服务器上安装 Subversion 后,如何配置和访问我的 Subversion 存储库

转载 作者:太空宇宙 更新时间:2023-11-03 17:15:13 24 4
gpt4 key购买 nike

我在我的服务器上成功安装了 subversion。当我运行命令时:

which svn

我收到回复:

/usr/bin/svn

我使用以下命令在我的根目录中创建了一个存储库,它是我的 httpdocs 文件夹:

svnadmin create ~/svn

我成功创建并配置了以下文件和文件夹,我在 svn 目录中看到了以下文件和目录:

conf  db  format  hooks  locks  README.txt

但是我无法创建trunk、branch和tag目录。事实上,我无法创建目录期间。这是我一直在使用的命令:

svn mkdir file:///httpdocs/svn/site

当我执行此命令时,我收到的消息如下:

svn: Could not use external editor to fetch log message; consider setting the
$SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options
svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no
'editor-cmd' run-time configuration option was found

此外,当我输入 url 时:

http://mydomain.com/svn

我收到以下消息:

404 - Not Found 

我需要做什么来配置我的存储库,检查我的存储库是否真的在工作。哦,我确实运行了以下命令:

svnserve -d

最佳答案

I create a repository inside my root directory which is my httpdocs folder with the following command...

这不是让 Subversion 与 Apache httpd 一起工作的方式,如果那是您想要做的。您需要 Apache 的 mod_dav 和 mod_dav_svn 模块。您可能需要重新编译 Apache 才能获得这些。

安装 mod_dav 和 mod_dav_svn 后,您需要配置 httpd.conf 文件(或将配置文件放在 httpd 的 conf.d 下,具体取决于它在您的系统上的配置方式)工作。

最后,这并不是那么困难。大多数 Apache 安装都添加了 mod_dav 和 mod_dav_svn,您可以查看您的 http.conf 文件是否配置正确。在线 Subversion 手册将包含 everything you need让它工作。

svn: Could not use external editor to fetch log message; consider setting the $SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no 'editor-cmd' run-time configuration option was found

阅读消息。它说 Could not use external editor 因为你没有指定一个。 Subversion 联机手册再次在 detail 中对其进行了解释.

基本上,当您在 Subversion 中提交更改时,您需要创建一条提交消息。这可以通过两种方式完成:

  • 您使用 -m 选项,例如 svn commit -m "This is my commit message"
  • 将变量 SVN_EDITORVISUALEDITOR 设置为您要使用的程序的名称。例如,在 Windows 中,您会说 C:> set EDITOR=notepad.exe。在 Unix 上,您会说类似 $ export EDITOR=vi 的内容。 Subversion 首先检查 SVN_EDITOR 变量的值,然后是 VISUAL,然后是 EDITOR。如果它们均未设置,则会显示您看到的错误。

为什么在svn mkdir命令上得到?

因为您使用命令的 URL 形式,它会创建目录,然后提交更改,因此需要提交消息。这应该有效:

svn mkdir -m"Adding the site directory to my repository" file:///httpdocs/svn/site

现在,您需要将存储库移出 HTTPDOCs 目录。这是一件非常糟糕的事情,因为它会损害您的网络服务器。

如果不想使用file://协议(protocol),可以使用svnserve。这是一个内置的 Subversion 存储库服务器,使用 svn:// 协议(protocol)。观察:

$ svnadmin create my_repos   #Creates the repository
$ vi my_repos/conf/svnserve.conf #See footnote 1 below
$ vi my_repos/conf/passwd #See footnote 1 below
$ svnserve -r my_repos -d
$ svn mkdir -m "Making basic directory layout svn://localhost/trunk \
> svn://localhost/tags svn://localhost/branches
$ export SVN_EDITOR="vi"

您的存储库也可供您网络上的所有机器访问。使用 svnserve 比 Apache httpd 简单得多,但是有几个问题:

  • 您不能运行 svnserve 的多个实例,因为它要使用端口 3690 并且不喜欢共享。使用 Apache httpd,您可以拥有多个存储库。
  • svnserve 的安全设置是有限的。对于 Apache,我可以使用 Windows 事件目录或 LDAP,也可以手动配置。
  • 一些基于 web 的 subversion 版本库浏览器不喜欢 svnserve。

顺便说一下,如果您还没有,请查看 Subversion on line manual .对于任何开源项目,这是我见过的最好的手册之一。


1 当您使用 svnserve 设置您的存储库时,您需要通过启用行 password 来编辑 svnserve.conf 文件-db = passed 大约是文件中的第 20 行。然后,您必须编辑 passed 文件(位于同一目录中)以配置用户及其密码。两者都非常简单,但很容易忘记,如果不这样做,就无法将任何内容提交到存储库中。

关于apache - 在我的 GoDaddy CentOS 专用服务器上安装 Subversion 后,如何配置和访问我的 Subversion 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8814659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com