【问题标题】:Subversion Commit hangs indefinitely after first fileSubversion Commit 在第一个文件后无限期挂起
【发布时间】:2011-12-10 23:31:02
【问题描述】:

我已通过 SSH 登录到我们的 Linux 网络服务器。我的 SVN 存储库中只有三个修改过的文件,我输入了svn ci -m "message" 来提交它们。我整个早上都在提交文件,没有任何问题,但现在 svn 正在尝试发送第一个文件!

我的屏幕目前是这样的:

Sending        path/to/my/file.php



^C



^C





.

这个^C 当然是在这里,经过几分钟的等待,我尝试使用 Control-C 取消操作。空白行是我按 Enter 的位置,只是为了确保我的 SSH 连接仍然处于活动状态。

我再次登录并在 repo 上执行了svn status,它显示一切都已锁定。

这是怎么回事??我可以做些什么来拯救我的回购并让它再次正常提交?

【问题讨论】:

    标签: linux svn commit


    【解决方案1】:

    我遇到了完全相同的症状,在我的情况下,它原来是一个 RPC 锁定问题。我使用文件访问我的仓库:本地和通过 NFS,并通过 svn+ssh:.

    我无法从任何客户端提交,但其他一切正常。

    显然,一个 NFS 客户端出了问题并在 repo 上留下了锁。 (可能是我的 MacBook 使用了 WIFI,这已经被证明是一个不可靠的 NFS 客户端。)

    重新启动 statd 并锁定在包含 repo 的服务器上立即解决了问题。

    【讨论】:

    • 我从来没有确定是哪个进程保留了 repo,但重新启动服务器(并进行清理)似乎可以解决问题。
    【解决方案2】:

    猜测 - 这是一个完整的 WAG - 你正在使用 Berkeley DB backed repository 并通过 file:// 或 svn+ssh:// 访问 repo。

    使用 BDB 支持的存储库的最佳做法是仅通过 svnserve (svn://) 或 apache dav_svn 模块 (http://) 访问 - 这有助于消除与数据库日志文件的文件所有权有关的几个问题。如果您需要运行 BDB 存储库,并且需要通过 svn+ssh:// 或 file:// 访问,您应该查看带有 Subversion 的版本控制一书的 Supporting Multiple Repository Access Methods 部分。

    如果您不是特别依赖于 BDB 存储库,我会看看 FSFS 存储库。他们没有 BDB 存储库存在的许多问题。

    如果您已经在运行 FSFS 存储库...那么,您已经找到了我。我认为不可能插入 FSFS 存储库。

    【讨论】:

      猜你喜欢
      • 2015-04-01
      • 2014-07-07
      • 2017-06-29
      • 2011-05-07
      • 2021-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-08
      相关资源
      最近更新 更多