0

当用户尝试使用预提交挂钩提交到 repo 时,会收到此错误。预提交挂钩检查用户是否应该能够提交,以及提交消息的格式是否正确使用svnlook.exeand --transaction。日志显示以下内容:

[Mon Dec 05 08:35:06.073768 2016] [dav:error] [pid 4780:tid 816] [client xx.x.xxx.xxx:xxxxx]
    Could not MERGE resource "/svn/SOME_REPO/!svn/txn/499-ei" into "/svn/SOME_REPO/trunk/    RESTRICTED/SomeFolder/AnotherFolder".  [500, #0]
[Mon Dec 05 08:35:06.074768 2016] [dav:error] [pid 4780:tid 816] [client xx.x.xxx.xxx:xxxxx]
    An error occurred while committing the transaction.  [500, #720005]
[Mon Dec 05 08:35:06.074768 2016] [dav:error] [pid 4780:tid 816] [client xx.x.xxx.xxx:xxxxx] Can't set position pointer in file 
    '\\\\zzzvnxnas01.zzz.com\\zzz\\Projects\\ZZZZ1SVSUBVML1\\CSVN\\Repositories\\SOME_REPO\\db\\txn-protorevs\\499-ei.rev': Access is denied.    [500, #720005]

我目前无法访问服务器,所以我需要从我拥有的点点滴滴中诊断它。Subversion 在 Apache 上运行 ~1.8 ~2.4 在 CollabNet SubversionEdge 上运行。

我的猜测是svnlook导致服务没有足够的权限导致问题,因为当 pre-commit 钩子被删除时,用户没有报告任何错误。此外,该服务是否有可能超载?

我的理论的唯一问题是开发服务器上没有问题......:D

否则,我认为这可能与通常损坏的用户文件有关svn cleanup,它们之间的交互不兼容的程序版本,防病毒软件,生产服务器上的用户负载或某些网络权限问题。

有人有这方面的经验吗?

谢谢。

4

1 回答 1

0

似乎svnlook与此无关。

错误显示“访问被拒绝”:

Can't set position pointer in file 
    '\\\\zzzvnxnas01.zzz.com\\zzz\\Projects\\ZZZZ1SVSUBVML1\\CSVN\\Repositories\\SOME_REPO\\db\\txn-protorevs\\499-ei.rev': Access is denied. 

运行您的服务器的帐户对存储库没有足够的权限。防病毒软件也可能是根本原因,因为它可能会阻止写入操作。

于 2017-01-23T15:01:14.717 回答