0

我使用 Mac Mini (Mavericks) 来托管 svn 存储库,这些存储库使用 file:/// 协议通过本地网络访问。我可以从同一 Mac 上的工作副本提交、更新等,我也可以从 Windows 7 机器上的工作副本提交/更新等。但是,如果我从 Win 7 机器上进行提交,然后尝试 svn 更新 mac mini 上的工作副本,我会收到错误消息:

svn: E180001: 无法连接到 URL 'file:///Volumes/LaCie/svnRepos/sftpbot' 的存储库 svn: E180001: 无法打开到 URL 的 ra_local 会话 svn: E180001: 无法打开存储库 'file:/ //Volumes/LaCie/svnRepos/sftpbot' svn: E000013: 无法打开文件'/Volumes/LaCie/svnRepos/sftpbot/db/current': 权限被拒绝

解决方法是使用 Finder 转到 file:///Volumes/LaCie/svnRepos,执行“获取信息”和“应用到随附的项目”“所有人”的读取和写入权限。然后我可以在 mac 上更新工作副本,但我真的不想每次需要更新工作副本时都执行此手动步骤。

max 上使用的 svn 客户端是 svnx。

谷歌搜索/手动阅读对我没有帮助。有谁知道发生了什么以及我如何解决它?

在此先感谢,加雷斯

4

1 回答 1

1

这可能是网络共享配置的一个功能。我不确定是否有一种很好的方法可以将其配置为按照您的意愿行事,而无需有关权限的更多详细信息。但是,确实不建议在文件共享上使用 Subversion 存储库。它可能会产生锁定问题、Subversion 版本不匹配(如果您想使用具有它不理解的格式的旧客户端),当然还有您遇到的权限问题。

我建议不要使用指向网络共享的 file:// 在您设置 SVN 服务器的其他机器上托管您的存储库。根据可用信息很难建议哪种服务器适合您,请参阅SVN Book 的选择服务器部分

也就是说,对您来说最简单的方法可能是 svnserve over ssh。在 Mac 上执行此操作应该像在 Mac 上的系统偏好设置的共享窗格下打开远程登录一样简单,然后在从其他机器访问存储库时使用 svn+ssh URL。可以在SVN Book 的 Tunneling over SSH 部分找到有关如何构造 URL 的详细信息。您可以只使用您在 Mac 上的帐户的用户名作为用户,使用您的密码作为 Mac。

你没有说你在 Windows 上使用的是什么客户端,但 TortoiseSVN 有关于设置使用 svnserve over svn 的说明。

于 2014-01-08T07:05:04.510 回答