我希望创建一个Java程序,它能够:
- 连接到特定的Git代码库
- 将文本追加到文件中
- 提交更改
- 将更改推送到该代码库中
理想情况下,所有这些都应该在内存中完成。
我正在使用JGit与Git进行交互:
InMemoryRepository repo = new InMemoryRepository(new DfsRepositoryDescription());
Git git = new Git(repo);
git.init().call();
PullCommand pull = git.pull();
StoredConfig config = git.getRepository().getConfig();
config.setString("remote", "origin", "url", "https://XXX");
config.save();
PullResult result = pull.call();
pull.call()
会导致以下异常:
org.eclipse.jgit.api.errors.NoHeadException: Pull on repository without HEAD currently not supported
at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:191)
如何将存储库的内容检索到内存中的JGit存储库中?
fetch
请求。 - user180100checkout master
或其他任何分支)。 - LeGECgit init
2)git remote add origin ...
3)git pull origin
。当我从命令行使用git时,通常是这样工作的。 - Glory to Russianew Git(repo)
命令和git.init().call()
命令之后活动分支是什么。查看JGit文档以获取更多有关其工作原理的详细信息。 - LeGEC