当无法进行推送时,JGit推送不会失败

时间:2018-07-02 16:35:17

标签: jgit

我正在尝试使用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();
}

但是,如果远程存储库的历史记录不同(因此不可能进行推送),则它既不会失败,也不会碰触远程存储库(很幸运)。有什么帮助吗? 谢谢。

1 个答案:

答案 0 :(得分:1)

您似乎希望引发异常;根据Javadoc,拒绝的引用并不构成例外。相反,PushCommand.call()返回一个PushResult对象的列表,您可以检查这些对象以查看每个请求的引用更新的状态。