0

当我在 Visual Studio 中更新解决方案时,出现此错误:

SharpSvn.SvnSystemException: Can't write to connection: An operation was attempted on something that is not a socket.  
   at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, SvnException error, Object targets)
   at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, svn_error_t* error, Object targets)
   at SharpSvn.SvnClient.Update(ICollection`1 paths, SvnUpdateArgs args, SvnUpdateResult& result)
   at SharpSvn.SvnClient.Update(String path, SvnUpdateArgs args, SvnUpdateResult& result)
   at Ankh.Commands.SolutionUpdateCommand.PerformUpdate(CommandEventArgs e, ProgressWorkerArgs wa, SvnRevision rev, Boolean allowUnversionedObstructions, Boolean updateExternals, Boolean setDepthInfinity, IEnumerable`1 groups, SvnUpdateResult& updateResult)
   at Ankh.Commands.SolutionUpdateCommand.<>c__DisplayClass6_0.<OnExecute>b__0(Object sender, ProgressWorkerArgs a)
   at Ankh.ProgressRunnerService.ProgressRunner.Run(Object arg)

当我分别更新解决方案中的每个项目时,我没有这个错误。此错误出现在 Visual Studio 2019 和 Ankhsvn 版本 1.0.12

我们的源服务器由一个名为Subversion 1.3 (subversion.tigris.org) 的程序和用于 SVNServe 的 Windows 服务包装器运行。我们从很多年前就有了它,直到现在才发现。此服务器上的其他解决方案也不会更新并且有相同的错误。
我想,升级Subversion 1.3可能是解决方案,但是下载 tigris subversion 的链接不起作用:
http
://subversion.tigris.org/servlets/NewsItemView?newsItemID=1685 我可以看到很多与 Apache Subversion 相关的页面,这似乎是旧的 Subversion 1.3 的超集,像这样:
https
://subversion.apache.org/docs/release-notes/1.12 它也说过:

要升级现有的服务器安装,只需在旧的库和二进制文件之上安装最新的库和二进制文件。

但它不直接提供任何软件包,但有指向其他 4 个站点的链接。哪一个会更新我们的Subversion 1.3 (subversion.tigris.org)?我应该安装这些软件包并转到已安装的文件夹并将每个文件复制并粘贴到上述站点建议的旧文件上吗?

4

2 回答 2

2

Ankhsvn 是 abondonware。自 2017 年以来,它没有“每日更新”。我怀疑你的问题在那里,你需要寻找支持的工具来替换它。

于 2020-10-11T16:32:29.797 回答
1

最后,我们通过安装此软件的最新版本来修复此错误,其中包括:
-TortoiseSVN(安装时也选择命令行客户端工具
-CollabNetSubversion-client
包。
那么我们应该这样设置一个新的网络服务: How to setup "svnserve --service" to run on Windows?

于 2021-01-07T08:27:39.760 回答