从Windows到Mac的SVN提交会覆盖文件权限

时间:2014-01-07 12:27:00

标签: windows macos svn svnx

我使用Mac Mini(Mavericks)来托管svn存储库,这些存储库可以使用file:///协议通过本地网络访问。我可以从同一个mac上的工作副本提交,更新等,我也可以从Windows 7机器上的工作副本提交/更新等。但是,如果我从Win 7机器提交然后尝试在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上更新工作副本,但每次我需要更新工作副本时,我真的不想执行此手动步骤。

最大使用的svn客户端是svnx。

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

先谢谢,加雷斯

1 个答案:

答案 0 :(得分:1)

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

我建议而不是使用file://指向网络共享来托管您在设置SVN服务器的其他计算机上的存储库。根据可用信息,很难提供适合您的服务器,请参阅Choosing a Server section of the SVN Book

那说最简单的方法可能是svnserve ssh。在Mac上执行此操作应该像在Mac上的“系统偏好设置”的“共享”面板下启用“远程登录”一样简单,然后在从其他计算机访问存储库时使用svn + ssh URL。有关如何构建URL的详细信息,请参阅Tunneling over SSH section of the SVN Book。您可以在Mac上为您的帐户使用用户名和Mac密码。

您没有说明您在Windows上使用的客户端,但TortoiseSVN有directions on setting up to use svnserve over svn.