我们目前正在开发自定义 Jenkins 插件。我们需要对git仓库进行一些操作。我们对存储库的历史感兴趣(例如:提交消息、标记消息等)。我想问是否有一些 Java Jenkins Git Api,可以从存储库中读取这些信息。目前我们发现 JGit 能够做到这一点,但我们不确定它将如何与服务器上运行的 Jenkins 实例一起工作。感谢您的任何建议。
最佳答案
尝试scm4j-vcs-git :
public static final String WORKSPACE_DIR = System.getProperty("java.io.tmpdir") + "git-workspaces";
...
IVCSWorkspace workspace = new VCSWorkspace(WORKSPACE_DIR);
String repoUrl = "https://github.com/MyUser/MyRepo";
IVCSRepositoryWorkspace repoWorkspace = workspace.getVCSRepositoryWorkspace(repoUrl);
IVCS vcs = new GitVCS(repoWorkspace);
vcs.setCredentials("user", "password"); // if necessary
vcs.getBranchesList();
vcs.getCommitMessages(...); //see doc
//etc
该项目目前正在开发中,因此您可以请求您需要的功能。
关于java - Jenkins Git API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43914448/