C# 我必须使用 SVN API 或库访问/提交/更新 WPF 应用程序中的 SVN 存储库

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/211765/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-03 18:18:14  来源:igfitidea点击:

i have to access/commit/update SVN repository in WPF application using SVN API or libraries

c#.netsvn

提问by rudigrobler

Any GOOD libraries available to access SVN from .net application (using C#). The only 3 I found so far that I will be trying out is:

任何可用于从 .net 应用程序(使用 C#)访问 SVN 的 GOOD 库。到目前为止我发现的唯一 3 个我将尝试的是:

I want to create a very simple SVN client!

我想创建一个非常简单的SVN客户端!

采纳答案by Bert Huijben

SharpSvn was desiged for .Net 2.0 and Subversion 1.5 and later. It integrates all subversion dependencies in a single set of dll that is directly usable from .Net (XCopy deployable). One of the other strong points of SharpSvn is that it hides all memory management and transforms Subversion errors in exceptions, and more importantly vice versa. (Makes debugging callbacks very easy)

SharpSvn 是为 .Net 2.0 和 Subversion 1.5 及更高版本设计的。它将所有 subversion 依赖项集成在一组可直接从 .Net 使用的 dll 中(可部署 XCopy)。SharpSvn 的其他优点之一是它隐藏了所有内存管理并在异常中转换 Subversion 错误,更重要的是反之亦然。(使调试回调非常容易)

NSvn was used by AnkhSVN before AnkhSVN 2.0. It moved to SharpSvn after that.

在 AnkhSVN 2.0 之前,AnkhSVN 使用 NSvn。之后它转移到了 SharpSvn。

The IronSvn project on Codeplex closed down. (It suggests using SharpSvn).

Codeplex 上的 IronSvn 项目关闭了。(它建议使用 SharpSvn)。

Svn# and its 2.0 successor Svn.Net are plain wrappers of the Subversion C api. They required the binaries of a subversion release to work. And you must manage the apr pools and some of the apr collection marshalling yourself from managed code. This is the only cross platform solution in this list. (Works just as well on linux)

Svn# 和它的 2.0 继承者 Svn.Net 是 Subversion C api 的简单包装。他们需要 subversion 版本的二进制文件才能工作。并且您必须管理 apr 池和一些从托管代码中自己编组的 apr 集合。这是此列表中唯一的跨平台解决方案。(在 linux 上也能正常工作)

回答by Joachim Kerschbaumer

  • what about NSvn which is (if i'm not wrong) also the core of ankhsvn (check out the tigris.org website for more information)
  • NSvn 怎么样,它(如果我没记错的话)也是 ankhsvn 的核心(查看 tigris.org 网站了解更多信息)

回答by Marc Gravell

I'm using SharpSVN at the moment - works fine for what I need (although it is for an automated process, so no UI work necessary).

我目前正在使用 SharpSVN - 可以很好地满足我的需要(尽管它是用于自动化过程,因此不需要 UI 工作)。

回答by Mathias F

I used SharpSvn. It was easy to integrate and works well for me. If you need some sample code have a look at this project https://github.com/bhank/SVNCompleteSync.

我使用了 SharpSvn。它很容易集成并且对我来说效果很好。如果您需要一些示例代码,请查看此项目https://github.com/bhank/SVNCompleteSync