我正在尝试使用 JGit 将本地存储库推送到 github 存储库:
String remote = "https://token@github.com/me/foo";
Repository repository = buildLocalRepository();
try (Git git = new Git(repository)) {
git.push()
.setCredentialsProvider(new UsernamePasswordCredentialsProvider("token", ""))
.setRemote(remote)
.call();
}
但是当远程存储库历史不同时(因此推送是不可能的)它既不会失败也不会触及远程存储库(幸运的是)。有什么帮助吗? 谢谢。
最佳答案
看起来您希望抛出一个异常;根据 Javadoc,被拒绝的 refs 不构成异常。相反,PushCommand.call()
返回一个 PushResult
对象列表,您可以检查该对象以查看每个请求的 ref 更新的状态。
关于当推送不可能时,JGit 推送不会失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51140394/