方法一:
利用svnkit的api进行获取,代码如下:
public String getMergeInfo1(String svnURL) {
Properties properties = System.getProperties();
properties.setProperty("svnkit.http.methods", "Basic,Digest,NTLM");
SVNRepository repository = null;
try {
repository = SVNRepositoryFactory.create(SVNURL.parseURIEncoded(svnURL));
ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager("username", "password");
repository.setAuthenticationManager(authManager);
long latestRevision = repository.getLatestRevision();
Map<String, SVNMergeInfo> mergeInfo = repository.getMergeInfo(new String[] { "" }, latestRevision, SVNMergeInfoInheritance.EXPLICIT, false);
return mergeInfo.toString();
} catch (SVNException e) {
e.printStackTrace();
}
return "";
}
方法二:
利用svn命令的方式进行获取,这种方式在以startup.bat启动tomcat能正常运行,但以服务的形式启动tomcat时需要设置启动账号,否则取不到内容,代码如下:
public String getMergeInfo2(String svnURL) {
StringBuilder sb = new StringBuilder();
Process exec = null;
BufferedReader br = null;
try {
exec = Runtime.getRuntime().exec("svn pg svn:mergeinfo " + svnURL);
InputStream inputStream = exec.getInputStream();
br = new BufferedReader(new InputStreamReader(inputStream));
String str = null;
while ((str = br.readLine()) != null) {
sb.append(str);
sb.append("\r\n");
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return sb.toString();
}
分享到:
相关推荐
指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间时间 获取SVN日志指定区间...
Jenkins自动化部署获取svn二级目录,Jenkins部署教程和动态获取svn路径教程
本篇将详细介绍如何在VS2017中配置自动获取SVN版本控制号,以便在每次编译时更新代码中的版本号。 首先,我们需要了解SVN版本号是什么。SVN reversion版本号是Subversion仓库中特定提交的唯一标识,它反映了代码库...
这个库使得开发者能够在Java应用程序中实现与SVN服务器的交互,包括版本控制操作、仓库浏览、信息获取等功能。本篇文章将深入探讨如何利用SVNKit来获取SVN的相关信息。 首先,你需要在项目中引入SVNKit的依赖。通常...
本文将深入探讨如何获取svn的最新版本号,并介绍一些常用的svn命令。 首先,获取svn的最新版本号通常是为了确保你正在使用的代码是最新的,避免因版本过旧而遇到已解决的问题或错过新功能。有几种方法可以获取: 1...
本主题聚焦于如何利用Ant与XMLTask jar包来获取SVN(Subversion)版本信息。下面将详细介绍这个过程以及相关知识点。 首先,了解Ant。Ant是一个基于Java的构建工具,它提供了跨平台的构建脚本能力,能够执行编译、...
自动获取工程svn提交的版本号,然后修改指定dll,exe的版本信息。最好达到的效果是,每次提交完svn后重新编译代码,会将最后提交的版本号写到version里比如:2.0.0.64,;2.0是大版本号,手动修改资源信息即可,后两...
标题和描述提到的"自动获取SVN代码并编译代码 以及自动部署方案"是一种高效的工作流,它整合了版本控制、编译和部署三个重要环节,使得开发团队能够快速响应变更,减少手动操作带来的错误。以下是关于这个主题的详细...
标题和描述中提到的“自动获取svn代码并且编译发布”是一种常见的持续集成(CI)实践,它涉及自动化从版本控制系统获取源代码、构建应用程序、并进行发布的过程。以下是这个流程涉及的关键知识点: 1. **Subversion ...
maven 简单实用的配置,打包,获取svn版本号、仓库等等实用
需要svnkit 使用方法 SVNUtil.getHistoryByDate("https://127.0.0.1:8443/svn/Test/mytestprotect/", "username", "password"); 如果jar 在我的其它资源里
使用python语言获取svn每个版本的详细Log信息便于分析
Linux 详细教程大全之 SVN 命令总结 Linux 作为一个开源操作系统,已经成为软件开发和服务器管理的必备工具,而 SVN(Subversion)则是版本控制系统中的一种,广泛应用于软件开发、文档管理和版本控制等领域。下面...
在windows环境下,提交代码到svn中,使用钩子脚本,获取项目名称,提交人,提交时间,提交的日志信息,版本号,纯bat脚本。ps:不是pre-commit.bat文件,因为在该文件中获取不到真正的版本号。
根据文件中DIR.TXT的配置来获取SVN地址中相应的单独资源文件,其中中文字符配置成自己的目录就可以使用了.放在版本目录中
在IT行业中,版本控制系统是开发团队协作的重要工具,Subversion(简称SVN)就是其中的一种。SVN允许团队成员共享代码、跟踪修改,并保持项目版本的一致性。在这个过程中,密码管理是确保数据安全的关键环节。当我们...
1,新建目录(如果有老的目录,则移除掉) 2,从svn获取项目代码,并归纳好目录 3,编译项目代码 4,启动项目 打开文件 配置好各种信息 执行 sh script start 即可
在日常使用中,SVN的主要操作包括 Checkout(检出)——获取仓库中的最新版本到工作副本;Update(更新)——将仓库中的最新更改同步到工作副本;Commit(提交)——将工作副本的更改保存回仓库;Merge(合并)——...
### SVN使用指南与命令详解 #### 一、概述 Subversion(简称SVN)是一种集中式的版本控制系统,广泛应用于软件开发和其他需要版本控制管理的领域。通过SVN,团队成员可以方便地协作开发项目,同时确保项目的每个...
本文将重点介绍Subversion(简称svn)这一版本控制系统,包括它的基本概念、主要功能以及安装配置步骤。 首先,svn的核心概念主要包括版本号、基线、冲突和分支。版本号是每个文件或目录变更的标识,它反映了代码的...