c# sharpsvn 客户端开发测试
1:没有工作副本,上传时会报错的.
会提示本地目录不是not a working copy 而此中文名称就是工作副本, 本地要与svn服务器公用的一个文件夹.
所以每次要checkout 然后才能执行add commit 或 updata
2: commit上传新文件上边问题解决,然后直接 commit 时 报错 :commit failed ( details follow)
因为没有先add 直接进行commit了.
第一次add后,再去掉add ,然后commit 也不提示错误了.说明服务器没回错误,他就认这个add标志.
3: 此文件用update 函数测试和修改上次上传的文件进行测试
未改进 更新,未提示错误, 修改文件之后也正常
测试未加add 标志测试 提示文件不存在 ,看来未进行commit 不能进行update;
4:大文件上传断网测试
在源环境下没有任何异常提示.上网在传 ,提示文件locked ;使用udate 上传,提示服务器未有此文件,本地文件加锁,应该是客户端内部程序加上.
SharpSvn异常处理
using (SvnClient client = new SvnClient())
{
string strRepoUri = "http://localhost:8080/svn/test"; //Svn地址
string strLocalUri = "D:\\SvnTest\\"; //本地副本地址
SvnImportArgs importArgs = new SvnImportArgs(); //Import参数
importArgs.LogMessage = "Improt Test"; //Import时的日志信息
client.Improt(strLocatUri + "test.txt",new Uri(strRepoUri), importArgs); //执行Svn 的Import命令
//异常捕获和处理
importArgs.SvnError += new EventHandler<SvnErrorEventArgs> (delegate(object sender, SvnErrorEventArgs e))
{
//若文件已经存在
if(e.Exception.SvnErrorCode == SvnErrorCode.SVN_ERR_ENTRY_EXISTS)
{
Console.WriteLine("Exists!!");
}
}
}
SharpSvn自带的枚举(SvnErrorCode.SVN_ERR_ENTRY_EXISTS)有很多异常类型,可以通过错误码(SvnErrorCode)来区分是那种异常。然后做出你想要的处理方式。
5、 没有本地副本的SharpSvn操作
前面的介绍,都是要在本地有Svn的本地副本目录才能操作的。下面介绍不用本地副本,直接操作Svn服务的方法。
SharpSvn接口中,SvnClient类定义了很多的由Remote开头的方法,如:RemoteDelete、RemoteImprot、RemoteMove等的。这些由Remote开头的方法,就可以让你没有本地副本而操作Svn。
using (SvnClient client = new SvnClient())
{
//删除文件
SvnDeleteArgs deleteArgs = new SvnDeleteArgs();
deleteArgs.LogMessage = "RemoteDelete Test";
client.RemoteDelete(new Uri(strRepoUri + "//test.txt"), deleteArgs);
//创建Svn目录
SvnCreateDirectoryArgs createArgs = new SvnCreateDirectoryArgs();
createArgs.LogMessage = "Create Directory Test.";
client.RemoteCreateDirectory(new Uri(strRepoUri + "//test") ,createArgs);
}
上面都是一些SharpSvn简单的几种用法。其实很多方法,可以通过对象浏览器查看然后调用的。希望能对大家有点帮助。
6.1 列出目录下的所有元素(非递归)
string dirPath = @"https://10.23.34.45:6801/svn/temp";
string dirRelPath = remoteSession.MakeRepositoryRootRelativePath(new Uri(dirPath)); //获取相对目录相对配置库根目录的相对路径
remoteSession.List(dirRelPath,
new EventHandler<SvnRemoteListEventArgs>(
delegate (object s, SvnRemoteListEventArgs e)
{
//e.Name: 元素名
//e.Path: 元素路径
//e.RetrievedRevistion: 元素的版本号
}));
c# sharpsvn 客户端开发测试的更多相关文章
- c# sharpsvn 客户端开发总结
判断文件夹是否是 working copy 工作副本两个方法 if (!IsWorkingCopy(localPath))//查看某目录是否是受svn管理的状态, 即是否为工作副本 { notiny ...
- 超级好用的前端开发测试Chrome插件-基于REST的Web服务客户端
基于REST的Web服务客户端是一款功能强大的谷歌浏览器插件,使用基于REST的Web服务客户端(模拟REST客户端)可以让用户使用谷歌浏览器模拟REST请求来测试REST风格. 基于REST的Web ...
- [原创]上海好买基金招高级Java技术经理/运维主管/高级无线客户端开发等职位(内推)
[原创]上海好买基金招高级Java技术经理/运维主管/高级无线客户端开发等职位(内推) 内部推荐职位 高级JAVA技术经理: 岗位职责: 负责项目管理(技术方向),按照产品开发流 ,带领研发团队,制定 ...
- 客户端SDK测试思路
本文来自网易云社区 作者:万春艳 是什么 客户端SDK是为第三方开发者提供的软件开发工具包,包括SDK接口.开发文档和Demo示例等.SDK和应用之间是什么关系呢?以云信即时消息服务为例,如下图所示, ...
- 用Jersey为Android客户端开发Restful Web Service
平时在做Android客户端的时候经常要与服务器之间通信,客户端通过服务端提供的接口获取数据,然后再展示在客户端的界面上,作为Android开发者,我们平时更多的是关注客户端的开发,而对服务端开发的关 ...
- 使用springcloud开发测试问题总结
使用springcloud开发测试 如下描述的问题,没有指明是linux部署的,都是在windows开发环境上部署验证发现的. Issue1配置客户端不使用配置中心 问题描述: 配置客户端使用配置中心 ...
- F版本SpringCloud 4—Eureka注册中心开发和客户端开发
源码地址:https://gitee.com/bingqilinpeishenme/Java-Tutorials 前言 通过前三篇文章,用大白话介绍了微服务和SpringCloud以及服务治理相关的概 ...
- Loadrunner开发测试脚本
Loadrunner开发测试脚本 开发测试脚本可以通过录制,也可以手动开发,建议能录制的尽量录制,省时省力,不能录制的只能费力自己开发了,具体看项目情况来决定. 使用Loadrunner开发脚本过程中 ...
- C#.NET 大型通用信息化系统集成快速开发平台 4.0 版本 - 多系统开发接口 - 苹果客户端开发接口
最近工作上需要,给苹果客户端开发接口,实现集中统一的用户管理,下面是接口调用参考. 1: 获取OpenId? http://127.0.0.1/GetOpenId.ashx?username=Admi ...
随机推荐
- 利用等概率Rand5产生等概率Rand3(转)
问题本身很明确,但不知道起个什么题目好,姑且先这么说吧. 问题描述:现在有一个叫做Rand5的函数,可以生成等概率的[0, 5)范围内的随机整数,要求利用此函数写一个Rand3函数(除此之外,不能再使 ...
- 历届试题 买不到的数目-(dp)
问题描述 小明开了一家糖果店.他别出心裁:把水果糖包成4颗一包和7颗一包的两种.糖果不能拆包卖. 小朋友来买糖的时候,他就用这两种包装来组合.当然有些糖果数目是无法组合出来的,比如要买 10 颗糖. ...
- ASP.NET 三级联动
三级联动就是用三个下拉列表框DropDownList,每个里面添加相应的东西,在第一个列表框中选择一个值,第二三个列表框都会根据第一个选择进行相应的变化,在第二个列表框中选择一个值,第三个列表框也会根 ...
- putty颜色调整
右键window窗口--Changing Setting--window--Colours: * Default Foreground: 255/255/255 * Default Backgroun ...
- spring的aop的例子
一个简单的Spring的AOP例子 2009-06-23 11:33:29| 分类: Spring | 标签: |举报 |字号大中小 订阅 package aop; /** * 目标对象的 ...
- vue element-ui怎样提炼一个自己写的js当作公共js
vue element-ui怎样提炼一个自己写的js当作公共js请教一下各位大神,我刚刚触摸vue element-ui几天,写的一个清晰检索的input框,现在需当作项目公共的部分,可遭需的html ...
- pta l2-28(秀恩爱分得快)
题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805054698012672 题意:给n个人,m张照片,在同一张 ...
- openstack(Pike 版)集群部署(三)--- Glance 部署
一.介绍 参照官网部署:https://docs.openstack.org/glance/queens/install/ 继续上一博客进行部署:http://www.cnblogs.com/weij ...
- Maven 标签
scope 1.compile:默认值 他表示被依赖项目需要参与当前项目的编译,还有后续的测试,运行周期也参与其中,是一个比较强的依赖.打包的时候通常需要包含进去 2.test:依赖项目仅仅参与测试相 ...
- Python 学习笔记---爬取海贼王动漫
最近无聊整理的爬虫代码,可以自动爬取腾讯动漫的任意漫画,思路如下: 1. 先获取想下载的动漫url, 这里用了 getUrls ,直接获取动漫的最后一章 2. 然后进入到该动漫去获取要下载的图片url ...