`
fireinjava
  • 浏览: 480557 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

Java打Tag CvsClient

    博客分类:
  • Java
阅读更多

增量编译的时候需要一个一个文件打Tag,不方便,网上也没发现现成的资料,

还好碰到个参考http://gblyh.bokee.com/6107026.html的,下了jar包,

以下是看了参考文章与jar反编译源代码写的用Java代码打Tag。

(本人写这个目的其实是为了对用wincvs工具cvs -history的导出清单文件进行逐一打tag时方便些,

 不用在Eclipse一个一个文件右击Team-->Tag as version-->...)

 

步骤:

 

1.下载http://javacvs.netbeans.org/files/documents/51/640/org-netbeans-lib-cvsclient.jar

2.相应的代码

   

import org.netbeans.lib.cvsclient.CVSRoot;
import org.netbeans.lib.cvsclient.Client;
import org.netbeans.lib.cvsclient.admin.StandardAdminHandler;
import org.netbeans.lib.cvsclient.command.Command;
import org.netbeans.lib.cvsclient.command.CommandAbortedException;
import org.netbeans.lib.cvsclient.command.GlobalOptions;
import org.netbeans.lib.cvsclient.command.tag.TagCommand;
import org.netbeans.lib.cvsclient.commandLine.BasicListener;
import org.netbeans.lib.cvsclient.connection.AuthenticationException;
import org.netbeans.lib.cvsclient.connection.Connection;
import org.netbeans.lib.cvsclient.connection.ConnectionFactory;

public class CVSClient {

	private Client cvsclient;
	private final CVSRoot cvsroot;
	private Connection connection;
	private String localPath;

	public CVSClient(String connectionString) {
		cvsroot = CVSRoot.parse(connectionString);
	}

	public String getLocalPath() {
		return localPath;
	}

	public void setLocalPath(String localPath) {
		this.localPath = localPath;
	}

	public void openConnection() throws AuthenticationException, CommandAbortedException {
		connection = ConnectionFactory.getConnection(cvsroot);
		connection.open();
	}

	public void closeConnection() throws IOException {
		connection.close();
	}

	public void excute(Command command) throws Exception {
		cvsclient = new Client(connection, new StandardAdminHandler());
		cvsclient.setLocalPath(localPath);
		cvsclient.getEventManager().addCVSListener(new BasicListener());
		System.out.println("Command>>>>>" + command.getCVSCommand());
		cvsclient.executeCommand(command, new GlobalOptions());
	}

	public static void main(String[] args) throws Exception {
		CVSClient cvsclient = new CVSClient(":pserver:username:password@IP:/dir/dir1/dir2");
		cvsclient.setLocalPath("E:/workspace/");
		cvsclient.openConnection();
		TagCommand tagCommon = new TagCommand();
		tagCommon.setTag("TagNameXXXXX");
		tagCommon.setFiles(new File[] { new File("E:/workspace/CVSClient/src/FileVersion.java") });
		tagCommon.setTagByRevision("1.4");// 设定Tag打到哪个版本的文件上,不加的话Tag会默认打到最新版本上
		tagCommon.setOverrideExistingTag(true);// 一定要加这句
		cvsclient.excute(tagCommon);

		cvsclient.closeConnection();
	}
}

/**
 * WARNING TO DEVELOPERS: Please be warned that attempting to reuse one open connection for more commands is not
 * supported by cvs servers very well. You are advised to open a new Connection each time. If you still want to proceed,
 * please do: System.setProperty("javacvs.multiple_commands_warning", "false") That will disable this message.
 */

 

 

分享到:
评论

相关推荐

    CVSClient

    ADA cvs client

    netbean java cvs client 源码

    在这个特定的上下文中,"netbean java cvs client 源码"指的是NetBeans IDE中的CVS(Concurrent Versions System)客户端源代码。CVS是一个版本控制系统,允许开发者在多人协作的环境中管理项目代码的不同版本。 在...

    Windows环境下I源码管理工具cvs client使用入门.pdf

    - tag命令用于创建一个版本标签,它类似于快照,可以锁定一个特定的修订版本。 - branch命令用于创建分支,这允许开发者在隔离的环境中工作,而不会影响主代码库。 5. 权限和安全性: - 在CVS服务器上可以设置...

    java导出excel (CVS格式)

    java导出CVS,csv只是一种文件的形式。。。就是按照逗号(英文逗号)分隔的文件 它的做成跟普通的文件做成是一样一样的,只需要创建一个文件(*.csv),把字符串按照一定的格式(AAA,BBB\nCCC,DDD注意必须是英文的...

    org-netbeans-lib-cvsclient.jar

    netbeans cvs lib 源码,可以方便的进行CVS编程操作

    cvs client for solaris10

    cvs client for solaris10

    eclipse-CVS-Client source code

    eclipse-CVS-Client source code

    JAVA CVS导出实例

    "JAVA CVS导出实例"这个标题暗示我们将探讨如何在Java项目中将数据导出到CSV文件。在描述中提到,使用CSV导出相比Excel有更高的性能,这是因为CSV文件是纯文本格式,不包含任何格式化信息,这使得它们在处理大量数据...

    java导出excel(CVS格式)

    java导出CVS,csv只是一种文件的形式。。。就是按照逗号(英文逗号)分隔的文件 它的做成跟普通的文件做成是一样一样的,只需要创建一个文件(*.csv),把字符串按照一定的格式(AAA,BBB\nCCC,DDD注意必须是英文的...

    cvsclient 包+源代码

    cvsclient 开发包+源码,供大家开发学习。测试使用。

    java_cvs_解析

    1. **Java API for CVS**:为了在Java环境中与CVS进行交互,开发者可以使用JCVS库(Java Client for CVS)。这个库提供了API,可以直接在Java代码中进行CVS操作,如登录、获取文件、查看历史等。 2. **Ant任务**:...

    cvs的java调用

    基于netbeans的用java改写的cvs客户端demo,包括客户端方法和调用demo;本人增加了几个客户端方法,如项目导入,获取历史各版本号,删除文件等,对需要的人可是很有用哦.发扬开源的共享精神,与各位分享,同时赚点分.

    java 调用cvs

    用java调用cvs客户端的过程,现在的资料很少,本人由于项目的需要下载了这个包,提供给大家

    新linux低版本java运行cvs 和ant

    然而,有时我们需要在新的Linux发行版上运行一些依赖于旧版本Java环境的工具,比如CVS(Concurrent Versions System)和Ant。这两个工具在软件开发流程中扮演着重要角色,CVS是版本控制系统,而Ant是Java构建工具。...

    JAVA CVS 导出实例

    JAVA源码 要点有 1. CSV的换行符号要使用CRLF既" 回车符+换行符"的形式. 2. 文字可以使用双引号围起来, 逗号可以围在双引号里面 3. 每个单引号要换成""(两个单引号)且字段要用一对单引号围住 简单的说,就是csv...

    CVS client interface in Java-开源

    Java中CVS客户端/服务器协议的实现。 它还具有用于通过命令行或使用Swing GUI进行用户交互的类。

    java 读取写入csv

    ### Java读取与写入CSV文件的详细解析 在日常的软件开发中,处理CSV(Comma Separated Values)文件是一种常见的需求,特别是在数据分析、数据导入导出等场景下。Java作为一种广泛使用的编程语言,提供了多种方式来...

    ,javaswf-CVS-SNAPSHOT-1.jar包

    heritrix3项目爬虫中所使用到的一个依赖包,javaswf-CVS-SNAPSHOT-1.jar包,有需要的朋友们,赶紧下载吧, 本人亲测过. 有积分的猿友们,赏个积分,没积分的,关注博主,私信发.

    版本控制插件cvs

    7. **标签(Tagging)**:在关键节点如发布版本时,使用`cvs tag`为当前状态打上标签。 ### 注意事项 使用CVS时,应遵循良好的版本控制实践,如频繁提交小的更改,清晰的提交注释,及时解决冲突。此外,虽然CVS在...

    NetBeans CVS source

    Java CVS Client,written in Java. Full source code is available for the library. The source is hosted as part of the Netbeans open source project.

Global site tag (gtag.js) - Google Analytics