使用JGit忽略推送操作中设置的凭据的Java代码

使用JGit忽略推送操作中设置的凭据的Java代码,java,bitbucket,push,jgit,Java,Bitbucket,Push,Jgit,我在java程序中使用JGit库将两个经过编程更新的文件推送到bitbucket。 当我在本地运行此程序时,它会将文件正确地推送到远程,但会使用我的个人git用户名密码,该密码是为基于本地终端的git活动配置的,并且Total会忽略程序中设置的技术用户凭据。我希望由技术用户而不是我的个人id进行提交。 为什么JGit会忽略设置的凭据 下面是代码 try (Grgit grgit = Grgit .open(openOp -> { openOp.setCr

我在java程序中使用JGit库将两个经过编程更新的文件推送到bitbucket。 当我在本地运行此程序时,它会将文件正确地推送到远程,但会使用我的个人git用户名密码,该密码是为基于本地终端的git活动配置的,并且Total会忽略程序中设置的技术用户凭据。我希望由技术用户而不是我的个人id进行提交。 为什么JGit会忽略设置的凭据

下面是代码

try (Grgit grgit = Grgit
        .open(openOp -> {
          openOp.setCredentials(new Credentials(ProjectProperties.getBitBucketUser(),
              ProjectProperties.getBitBucketPwd()));
          openOp.setDir(".");
        })) {
      grgit.add(addOp -> addOp
          .setPatterns(new HashSet<>(Arrays.asList("fil1.properties", "fil2.properties"))));
      grgit.commit(commitOp -> commitOp
          .setMessage(
              " Updating release details in release.md & release.properties"));
      grgit.push();
      String username = grgit.getRepository().getCredentials().getUsername();
      String passw = grgit.getRepository().getCredentials().getPassword();
      logger.info("*** {} ** {}**", username, passw);
      return true;
    }```

To add more dtails about execution:

This code is part of gradle custom plugin code and been executed from gradle custom task execution from command line.
try(Grgit Grgit=Grgit
.open(openOp->{
openOp.setCredentials(新凭据(ProjectProperties.getBitBucketUser(),
getBitBucketPwd());
openOp.setDir(“.”);
})) {
grgit.add(addOp->addOp
.setPatterns(新的HashSet(Arrays.asList(“fil1.properties”、“fil2.properties”)));
提交(commitOp->commitOp
.setMessage(
“更新release.md和release.properties中的发布详细信息”);
grgit.push();
字符串username=grgit.getRepository().getCredentials().getUsername();
字符串passw=grgit.getRepository().getCredentials().getPassword();
logger.info(“***{}**{}**”,用户名,passw);
返回true;
}```
要添加有关执行的更多数据标签,请执行以下操作:
此代码是gradle自定义插件代码的一部分,已从命令行的gradle自定义任务执行中执行。

只是确认一下-日志输出是显示技术用户的凭据,还是显示您的个人凭据?是的,它显示技术用户的凭据。我必须输入的日志只是为了确认它们是否正确设置,并且是由日志确定的,仅技术用户的凭据。只是为了确认-日志输出是显示技术用户凭据,还是显示您的个人凭据?是,它显示技术用户的凭据。我必须输入的日志只是为了确认它们是否正确设置,并且是由日志确定的,它只是技术用户的凭据。