Jgit 错误?即使使用 UsernamePasswordCredentialsProvider 传递了不正确的用户名,Git clone 命令仍然有效

问题描述 投票:0回答:0

在尝试使用 jgit 克隆 repo 时,将错误的用户名传递给

UsernamePasswordCredentialsProvider
实际上不会导致任何错误,这让我感到非常惊讶。为什么它有效?当用户名不正确时如何克隆回购协议? 尝试使用版本 4.6.0.201612231935-r 和 6.5.0.202303070854-r

我有一个函数正在尝试克隆一个 git 仓库,给定用户名和访问令牌。 在尝试处理边缘情况的异常时,我注意到传递了不正确的用户名,但特定 git url 和分支的正确访问令牌根本不会给出任何错误!

` return Git.cloneRepository()
          .setURI(repoDetailsModel.getRepoUrl())
          .setCredentialsProvider(
              new UsernamePasswordCredentialsProvider(
                      "INCORRECT_RANDOM_USER" , repoDetailsModel.getAccessToken()))
          .setDirectory(tempDir)
          .setBranchesToClone(Arrays.asList(REPO_BRANCH_PATH + repoDetailsModel.getRepoBranch()))
          .setBranch(REPO_BRANCH_PATH + repoDetailsModel.getRepoBranch())
          .call();`

但是传递不正确的访问令牌确实会出现预期的“未授权”错误。 这是 jgit 库中的错误吗? 只要访问令牌在设计上是正确的,

UsernamePasswordCredentialsProvider
是否允许匿名访问?

java git sdk jgit
© www.soinside.com 2019 - 2024. All rights reserved.