我想从镜像中检出,但是在没有svn sw -relocate命令的情况下提交给master

时间:2011-10-11 10:39:11

标签: svn svnsync

我想从镜像中检出,但是在没有svn sw的情况下向主人提交,是否可能?

使用svn sw --relocate我可以执行此操作,但我希望在提交期间自动从slave更改为master。 svn checkout将如何工作(流程)任何人都可以解释这一点。

我不能在结账时设置从服务器的目标IP或主IP吗?有脚本吗?

我正在尝试从主服务器本身同步数据,但我收到以下错误:

Warning: post-commit hook failed (exit code 255) with output: Host key verification failed.

我将slave的svnsync sync file:///pwd/proj命令保存在文件末尾的master /pathc/proj/hooks/post-commit文件中。我收到上述错误,但如果我在主服务器上的shell提示符中运行此命令它工作正常。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

SVNMasterURI似乎是这里的关键字。

我只看到有人这样做。由于还没有其他答案,我想在这里引用我的笔记总比没有好。你应该把它们作为进一步研究的起点,而不是作为这个主题的最终真理。

在镜像上使用apache,当然还有http(s)用于从客户端获取存储库。

配置Apache以将所有写入命令(= commit)重定向到主svn服务器。读取命令(=更新等)仍然需要在本地提供。

看来你不能在这个设置的镜像上使用AuthzSVNAccessFile,否则提交给master会被认为无效。

在我看到的示例中,更改了以下文件:/etc/apache2/mods-enabled/dav_svn.conf

SVNMasterURI https://master.com/repo
AuthType basic
AuthBasicProvider ldap external
AuthExternal master-svn
require valid-user

注意:“ldap”和“external”仅作为示例,您可以使用不同的auth机制进行读写(= mirror和master)。在此示例中,ldap在镜像上用于读取命令,external用于master。此处省略了进一步的ldap配置和ExternalAuth配置。