使用Java进行git pull、add、commit和push

8
我们有一些项目在maven部署期间会生成一些特殊的文件,这些文件必须放入一个特殊的git项目中。
目前,我们自己处理这个过程,但我们希望通过添加一个maven插件来实现自动化。因为这一步很容易被忽略。
问题是:
是否有任何API或类似于git的东西,可以让Java调用它来拉取、添加文件、提交和推送。如果存在冲突,始终接受我们的更改。
1个回答

14

你本来可以谷歌搜索“git java api”。

这将返回以下内容作为第一选择:

https://git-scm.com/book/en/v2/Appendix-B%3A-Embedding-Git-in-your-Applications-JGit

JGit

如果你想在Java程序内部使用Git,则有一个名为JGit的功能齐全的Git库可供使用。 JGit是一个相对全面的Git实现,原生使用Java编写,并且在Java社区中得到广泛应用。 JGit项目位于Eclipse伞下,其主页可在http://www.eclipse.org/jgit找到。设置步骤

有许多方法可连接您的项目与JGit并开始编写代码。 可能最简单的方法是使用Maven - 通过向pom.xml文件中的<dependency>标记添加以下片段来实现集成:

<dependency> <groupId>org.eclipse.jgit</groupId> <artifactId>org.eclipse.jgit</artifactId> <version>3.5.0.201409260305-r</version> </dependency>

版本号在您阅读此内容时可能已经更新,可以查看http://mvnrepository.com/artifact/org.eclipse.jgit/org.eclipse.jgit获取更新的存储库信息。完成此步骤后,Maven将自动获取并使用您需要的JGit库。

如果您宁愿自己管理二进制依赖项,请使用预构建的JGit二进制文件:

JGit二进制文件可从http://www.eclipse.org/jgit/download获取。您可以通过运行以下命令将它们构建到您的项目中:

javac -cp .:org.eclipse.jgit-3.5.0.201409260305-r.jar App.java java -cp .:org.eclipse.jgit-3.5.0.201409260305-r.jar App


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接