7

我可以进行结帐、更新等。但是当我尝试提交更改时,SVN 给了我以下错误:

无法打开文件'/svn/p/pokemonium/code/db/txn-current-lock':权限被拒绝

我正在使用带有最新版本 TortoiseSVN 的 Windows 7 x64 SP1。UAC已关闭,我的帐户具有读写权限等。

我可以很好地提交到其他 svn 存储库。

4

7 回答 7

12

对我来说,它最终成为服务器上的权限问题。我在 linux 机器上有我的 repo,并 ssh 以使用 svnadmin。为方便起见,我以 root 身份执行了我的创建存储库命令。我正在寻找将我的 Windows 机器上的源代码放入 repo,因此使用 TortoiseSVN 来设置主干/分支/标签。服务器上包含 repo 的目录归 root 所有,而 Tortoise 以 apache 的形式出现。我将服务器上的目录改成 apache:apache,一切都很顺利。

chown apache:apache -R my_repo_root
于 2013-08-03T05:27:01.870 回答
9

这是服务器配置问题。在 windows 主机上,Visual SVN 服务器默认运行在 NETWORK SERVICE 帐户下。我通过授予此帐户对存储库文件夹的完全访问权限来解决此问题。另一种选择是将 Visual SVN 服务切换到 SYSTEM 帐户,但这可能会带来潜在的安全风险。

于 2014-11-02T05:36:51.553 回答
1

试试这个。

  1. 制作工作副本的备份副本(为了安全起见)。
  2. 将您的整个工作副本复制到其他地方。
  3. 取出副本并从中删除所有 SVN 文件夹
  4. 删除您的工作副本并重新结帐
  5. 现在将损坏的工作副本复制/粘贴到新结帐上。

在执行复制/粘贴之前,您必须从损坏的工作副本中完全删除 _svn 或 .svn 文件夹,这对这项工作至关重要。

这将为您(希望)留下一个工作副本,该副本显示(!)您自上次提交以来修改的所有文件。并修复了您的锁定问题。

于 2012-05-15T20:08:12.613 回答
1

重新安装 Windows 7 并将 SVN 存储库从旧 Windows 复制到新 Windows 后,我遇到了同样的问题。

在尝试了经理先生提出的步骤后,我的问题仍然没有解决。

在确保为 SVN 存储库文件夹正确设置权限后,我刚刚删除了项目 /db 文件夹中的文件“txn-current-lock”。那为我修好了。从那时起,我可以再次提交我的项目。

于 2013-10-17T09:10:20.373 回答
0

我在 Unix 机器上遇到过同样的问题

重启SVN服务器的Apache服务解决了我的问题。

-f httpd.conf -k 停止

-f httpd.conf -k 开始

于 2013-07-16T13:32:44.830 回答
0

在我自己的情况下,我的 linux 服务器在断电后重新启动。由于已进行了一些日志修复,因此文件系统仍以只读方式挂载。重新启动机器恢复了全部功能。

于 2017-03-17T01:49:38.390 回答
0

权限也对我有用

错误

repo/db/txn-current-lock: Permission denied

使固定

chown apache:apache -R my_repo_root
于 2020-10-03T10:51:09.893 回答