C#代码导出SVN文件夹

4
我需要一个简单的C#脚本来导出SVN文件夹。
注意:我已经在这台Win 2008 r2服务器上安装了Tortoise SVN。
谢谢您的帮助!
示例:
//SVN: 
string source = c:\project\websiteFiles\

//Export to:
string target = c:\inetpub\hockeyWebsite\

ExportSVNfolder(source, target)
{
// export the files

// wait till export is 100% complete

// return
}
3个回答

8

使用SharpSvn的SvnClient Export方法非常简单:

SharpSvn.SvnClient svnclient = new SvnClient();
svnclient.Export(new SvnUriTarget(source),
    target, new SvnExportArgs());

3
我建议使用SharpSVN来处理相关的IT技术问题。

0

您可以通过命令行自动化执行所有TortoiseSVN命令,如帮助文件中所述。或者您可以直接安装和调用Subversion二进制文件。

您需要考虑的一件事是,导出命令只会复制已版本控制的文件(即受版本控制的文件)。如果您有其他需要复制的文件(例如构建输出或生成的文件),那么我建议使用另一种方法,例如TheCatcher在此论坛帖子中展示的命令行解决方案(使用xcopy):

  1. 创建一个文本文件(例如c:\ignore.txt),其中列出了不应该被导出/复制的所有文件(通常只包含一行:.svn以排除SVN文件夹)。
  2. 创建一个批处理文件,其中包含以下命令来执行导出:
  3. XCopy C:\WorkingCopyFolder C:\TargetFolder /EXCLUDE:C:\ignore.txt /E /C /I /F /R /Y

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接