我想知道是否有一种方法可以使用Java将文件推送到GitLab上的现有存储库。
假设我的Java源代码产生了一个输出文件(例如,一个配置文件,例如config.xml或gitlab-ci.yml)。我只想将此文件推送到GitLab上的远程存储库。这可能吗?我想使用JGit是解决方案。但是,我不知道如何使用它,以在不创建新仓库的情况下推送到现有仓库。
旁注:为了使我的问题更清楚,我所面临的场景是,我有一个生成yaml文件的代码,该文件将用于配置运行另一个源代码的GitLab CI。
提前致谢。
我可以看到两种解决此问题的方法。
1)使用简单ProcessBuilder
且执行中的shell命令将给定文件添加并推送到仓库中。它将在文件夹内执行,这意味着它将在项目的本地存储库范围内。
2)使用JGit,为此,您需要正确设置存储库路径:
Repository existingRepo = new FileRepositoryBuilder()
.setGitDir(new File("[Your project path]"))
.build();
然后,您可以使用Porcelain API添加并推送您需要的文件。
您需要考虑的唯一一件事是使用来提供凭据应该更容易一些Jgit
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句