8

我正在使用 svnsync 在两个系统之间同步一个 SVN 存储库,我不能 100% 确定在同步完成后它是否可以独立于我的“新用户”。

我需要做什么才能使其成为一个完全独立的实体?仅更改 passwd 文件就足够了吗?

4

2 回答 2

11

我需要做什么才能使其成为一个完全独立的实体?

新存储库和原始存储库之间的唯一链接是svnsync synchronize. 您可以安全地删除这样的:

svn propdel --revprop -r 0 svn:sync-from-uuid http://svn.example.com
svn propdel --revprop -r 0 svn:sync-last-merged-rev http://svn.example.com
svn propdel --revprop -r 0 svn:sync-from-url http://svn.example.com

除了确保svnsync synchronize不能再运行之外,这并没有多大作用。

编辑:只是想到了别的东西。您可能svn:externals在项目中使用了属性来指向另一个存储库或同一存储库中的另一个位置。

应该对同一存储库中的链接使用相对 URL 语法,在这种情况下没有问题。但是,如果为此使用绝对 URL,则此类链接将在svnsync. 您可以像这样检查所有svn:externals属性(可能需要一段时间,递归扫描所有文件夹):

svn propget -R svn:externals http://svn.example.com/
于 2011-01-20T17:48:18.920 回答
0

基本上,您需要 apache 配置来:

  • 使用不同的 URL 和不同的引用该新存储库AuthName
  • conf/authz在所述新仓库的文件中声明您的新用户。
  • 声明他们的密码(如果您使用的是:q!AuthType Basic身份验证模式)

具有不同的密码不是强制性的:一旦两个存储库使用两个不同的地址(在同一个 apache 或两个不同的 'apache' 下)进行管理,它们将彼此独立。

于 2011-01-20T07:25:00.157 回答