我正在尝试删除名为test
的远程分支。运行此代码时我没有任何错误,但是远程分支没有被删除。
'ans'是包含分支ID的目标。
当我使用完整分支时,此代码对我有用。但我必须更改某些内容,因为它不再起作用。
git.branchDelete().setBranchNames(ans).setForce(true).call();
RefSpec refSpec = new RefSpec()
.setSource(null)
.setDestination("refs/remotes/origin/test");
git.push().setRefSpecs(refSpec).setRemote("origin").call();
假设'ans'是本地分支的完整分支名称,例如refs/heads/test
branchDelete()
代码看起来不错。
但是粘贴到push命令的ref规范的目的地应表示分支的名称,因为该分支的名称在远程端被引用。在这种情况下,refs/heads/test
RefSpec refSpec = new RefSpec().setSource(null).setDestination("refs/heads/test");
或简称
RefSpec refSpec = new RefSpec(":refs/heads/test");