在git控制台上,我可以执行以下操作,仅从远程存储库中获取单个标记(远程未添加):
git fetch -n git@github.company.com:organization/repo.git tag mytag
我想尝试使用JGit,但我无法解决它。
fetcher.remote = remoteName // (in this case remote is already added)
fetcher.setRefSpecs("${opts.mytagname}")
fetcher.setTagOpt(TagOpt.NO_TAGS)
fetcher.call()
不幸的是它不起作用。有什么建议吗?
答案 0 :(得分:2)
要获取特定标记,您需要提供明确要求此标记的refspec。使用JGit也可以从未配置的遥控器中获取。 @PreAuthorize("hasRole('ROLE_VIEW')")
方法接受已知(即已配置)远程的名称,如FetchCommand::setRemote
或远程存储库的完整URL。
以下测试说明了两者:
origin