SVN - 无法提交文件(无法创建目录 - 没有这样的文件或目录)

San*_*ath 2 svn commit smartsvn

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

svnadmin create --fs-type fsfs <repository_name>
Run Code Online (Sandbox Code Playgroud)

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

useradd sandeepan
passwd sandeepan
Run Code Online (Sandbox Code Playgroud)

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

之后,我从 URL 结帐svn+ssh://<IP>/<path to repository>并成功运行。我能够更新到以前的修订版,但无法提交。它说 -

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
Run Code Online (Sandbox Code Playgroud)

但仍然得到同样的错误。我正在使用智能 SVN 5.0.4

谢谢,

桑迪潘

更新

即使遵循了 Greg 的建议,我也无法承诺。错误现在说Permission denied:-

Commit failed - Can't create directory 'path/to/repository/db/transactions/1855-1.txn': 
Permission denied
Run Code Online (Sandbox Code Playgroud)

Gre*_*ill 5

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