我想将现有的存储库(从位置A)移动到新的Linux服务器(位置B)。因此,我使用以下命令在该服务器(位置B)中创建了一个新存储库:

svnadmin create --fs-type fsfs <repository_name>

然后,我从位置A复制了db文件夹,并覆盖了位置B的覆盖,因为我想保留以前的修订。我使用以下命令在位置B中创建了系统用户:
useradd sandeepan
passwd sandeepan

我没有在存储库上为用户指定任何权限。

之后,我从URL svn+ssh://<IP>/<path to repository> checkout ,并成功运行。我能够更新到以前的版本,但是无法提交。它说 -
Commit failed -Can't create directory 'path/to/repository/db/transactions/1852-1.txn' no such file or directory
因此,我试图像这样为该用户提供对存储库的访问:
groupadd svn_users
usermod -a -G svn_users harry
chgrp -R svn_users /var/backup/hello

但是仍然出现相同的错误。我正在使用Smart SVN 5.0.4

谢谢,

桑迪潘

更新

即使遵循了Greg的建议,我也无法 promise 。该错误现在显示Permission denied:-
Commit failed - Can't create directory 'path/to/repository/db/transactions/1855-1.txn':
Permission denied

最佳答案

当将Subversion存储库从一台计算机移动到另一台计算机时,我会强烈建议您使用 svnadmin dump svnadmin load 复制该存储库。 Subversion的次要版本之间存在细微的差异,这使得复制存储库数据库成为问题。

07-24 09:45
查看更多