当使用doExport()svnkit 的方法时,我不明白一个参数的含义.
看完Javadocs之后,我仍然没有得到它
参数pegRevision是什么意思?
文档说
pegRevision - 首先在存储库中看到url的修订版,以确保它是需要的那个
但这并没有真正帮助我理解它.
我正努力svnkit与之合作svnant.
这是我的构建文件:
<path id="svnant.classpath">
<pathelement location="${env.ANT}/../lib/svnant.jar"/>
<pathelement location="${env.ANT}/../lib/svnClientAdapter.jar"/>
<pathelement location="${env.ANT}/../lib/svnkit.jar"/>
<pathelement location="${env.ANT}/../lib/ganymed.jar"/>
</path>
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.classpath" />
<svnSetting
svnkit="true"
javahl="false"
id="svn.settings"/>
<target
name="svnTest">
<svn refid="svn.settings">
<wcversion
path="${basedir}\..\"
prefix="svn."
/>
<info
target="${basedir}\..\"
propPrefix="svn.info."/>
</svn>
</target>
Run Code Online (Sandbox Code Playgroud)
运行此构建文件时,我收到以下错误.svnkit.jar并且ganymed.jar在我的ant/lib目录中,我包含在类路径中的其他内容也是如此.我究竟做错了什么?
svnTest:
[svn] Missing 'svnkit' dependencies on the classpath !
BUILD FAILED
build.xml:53: Cannot find javahl, svnkit nor command line svn client
Run Code Online (Sandbox Code Playgroud)
详细错误:
repoCheckDev:
[svn] Missing 'svnkit' dependencies on the classpath !
BUILD FAILED
build.xml:line#: Cannot find javahl, …Run Code Online (Sandbox Code Playgroud) 我正在编写一段代码,一旦在SVN工作副本中执行,就会找到根目录:
File workingDirectory = new File(".").getCanonicalFile();
File wcRoot = SVNWCUtil.getWorkingCopyRoot(workingDirectory, true);
Run Code Online (Sandbox Code Playgroud)
获取给定此根的存储库URL,构建SVNClientManager给定的此信息,现在我停留在如何获取工作副本中不在存储库中的任何内容的列表 - 这包括本地修改的文件,未解析的合并,未版本控制的文件我很乐意听到任何我可能错过的事情.
我怎么做 ?这个代码片段似乎需要访问存储库本身,而不是WC:
clientManager.getLookClient().doGetChanged(...)
Run Code Online (Sandbox Code Playgroud) 如何通过Teamcity运行器调用svn最后提交作者和评论到ant构建脚本?
我使用SVNKit库开发一个Java程序,该库负责在版本控制下更新或提交目录.目录内容可以由我无法控制的另一个程序更改,该程序可以添加,删除或编辑文件而忽略设置subversion信息.
问题是" 我的程序如何知道要做什么 "?
因为没有添加新文件,所以我尝试处理rootIirectory的doImport,但它会导致SVNException表明该文件已存在于存储库端.
SVNCommitClient cc = cm.getCommitClient();
cc.doImport(new File(subVersionedDirectory), SVNURL.parseURIEncoded(repositoryURL), "<import> " + commitMessage, null, false, true, SVNDepth.fromRecurse(true));
Run Code Online (Sandbox Code Playgroud)
我还发现一段代码可能会在提交之前将丢失的文件标记为DELETED
cc.setCommitParameters(new ISVNCommitParameters() {
// delete even those files
// that are not scheduled for deletion.
public Action onMissingFile(File file) {
return DELETE;
}
public Action onMissingDirectory(File file) {
return DELETE;
}
// delete files from disk after committing deletion.
public boolean onDirectoryDeletion(File directory) {
return true;
}
public boolean onFileDeletion(File file) {
return true;
} …Run Code Online (Sandbox Code Playgroud) 我已经安装了最新版本的subversion svn,然后启动eclipse下载连接器.选择最新的SVN Kit(1.8.5)然后我收到此错误:
执行安装时出现问题:需要HTTP代理身份验证:http: //community.polarion.com/projects/subversive/download/eclipse/4.0/luna-site/content.xml 有关详细信息,请参阅错误日志.
对于出了什么问题的任何想法?
我正在尝试使用SVNKIT java API将分支合并到主干.
它的代码如下:
String branchURL = "<Branch URL>";
SVNURL branchSVNURL = SVNURL.parseURIDecoded(branchURL);//SVN Branch URL
String WC_PATH= "<Some Path>";//This is the Working copy path which has the Trunk checked out
File svnWorkingCopy = new File(WC_PATH);
SVNDiffClient svnDiffClient;//This is initialized using SVNClientManager
try{
//doMerge(java.io.File path1, SVNRevision revision1, SVNURL url2, SVNRevision revision2, java.io.File dstPath, SVNDepth depth, boolean useAncestry, boolean force, boolean dryRun, boolean recordOnly)
svnDiffClient.doMerge(branchSVNURL, SVNRevision.HEAD,null,svnWorkingCopy,SVNDepth.INFINITY,false, false, false, false);
}catch(Exception e){
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
运行此代码会引发以下错误:
org.tmatesoft.svn.core.SVNException: svn: E200007: Runner for 'org.tmatesoft.svn.core.wc2.SvnMerge' command have …Run Code Online (Sandbox Code Playgroud) 我刚刚在Windows 10机器上下载了一个全新的Eclipse JEE Neon.1a版本(4.6.1).我去市场获得最新的Subversive SVN Team Provider 4.0.2.试图在Message中安装结果:The following solutions are not available: SVN Team Provider 4.0.2.我选择继续,但它似乎工作.重启后,我选择了SVNKit 1.8.14 Subversive SVN Connector并安装没有任何问题.
现在我能够进行基本的SVN操作,一切似乎都很好.除了分享一个新项目.我创建了一个名为"test"的新项目,并试图分享为一个新项目.这导致消息:
分享项目失败了.无法用org.tmatesoft.svn.core.SVNException覆盖原因:svn:E160013:该修订版中不存在URL" http:// sol:3380/svn/repo/test ".
我试图与另一个SVN服务器共享一个新项目,相同的错误消息.我在不同的机器上重复了整个过程,同样的信息.
我直接从更新站点而不是市场安装了SVN Team Provider.同样的问题.
我去了SVNKit网站尝试使用旧版本的SVNKit并通过存档的更新站点进行安装,但它们甚至不会出现在Eclipse中的SVN Connector Chooser中.
我真的不知道该怎么做,有人可以帮我搞定吗?
升级到TeamCity 2017.2后,我的SVN结帐在我的构建代理上开始失败并出现此错误:
svn:E200030:在'[... folder ...]'中检测到未完成的事务
代理程序在Windows Server 2012 R2和TeamCity Professional 2017.2上运行(版本号50574)
最初的谷歌搜索和浏览Stack Overflow还没有找到答案.
svnkit ×10
svn ×9
java ×4
ant ×2
eclipse ×2
subversive ×2
teamcity ×2
eclipse-luna ×1
eclipse-neon ×1
jenkins ×1
svnant ×1
tortoisesvn ×1