git - 使用 JGIT 将更改推送到远程 Github 存储库
问题描述
我是 git 新手,我正在尝试将我提交的更改推送到 github 存储库。这是代码片段:
Git git = Git.init().setDirectory(localPath).call();
git.add().addFilepattern(".").call();
git.add().setUpdate(true).addFilepattern(".").call();
Status status = git.status().call();
Set<String> added = status.getAdded();
Set<String> uncommittedChanges = status.getUncommittedChanges();
git.commit().setAllowEmpty(true).setAll(true).setNoVerify(true).setMessage(commitMessage).call();
CredentialsProvider cp = new UsernamePasswordCredentialsProvider(username, password);
StoredConfig storedConfig = git.getRepository().getConfig();
storedConfig.setBoolean( "http", null, "sslVerify", false );
storedConfig.save();
git.push().setRemote(gitURL).setCredentialsProvider(cp).call();
如果我使用新创建的 Github 存储库并提供该 gitURL,那么所有内容都会按预期推送。但是,如果我已经有一个现有的 Github 存储库,其中包含一些内容,这不会推送也不会引发任何错误。我什至尝试使用 setForcegit.push().setForce(true).setRemote(gitURL).setCredentialsProvider(cp).call()
但它会将新内容覆盖到我的 Github 存储库中,并且以前的内容会丢失。
我想知道我应该在此处进行哪些更改,以便将新更改推送到我的 Github 存储库并且该存储库的旧内容也保留?
解决方案
推荐阅读
- anylogic - 是否有可能使用 java 代码进行维护或中断?
- java - 当后台堆栈中的 Activity 及其片段被调用到前台堆栈时,Android 应用程序崩溃
- android - 如何在 android 设备上执行使用 pygame 制作的游戏?
- python - Streamlit 中的下拉菜单,不带括号和引号
- opengl - 将 OpenGL 版本设置为 2.0 似乎无济于事,因为 3.3+ 的功能仍然有效
- amazon-web-services - Cloudformation:ELB 侦听器规则创建失败并显示“提供的请求无效”
- c# - 我正在尝试在上传到数据库之前验证用户输入。我已链接我的验证和主代码,但我一直收到错误
- python - 我可以提取由 xarray plot contourf 调用生成的自动标题吗?
- django - DRF get_queryset 检查是否在 ManyToManyField
- android - 如何将存储权限与外部存储管理员权限捆绑在一起