在Jenkins/Git中设置远程跟踪

Luc*_*ano 7 git sbt jenkins jenkins-plugins

有了詹金斯,我正在检查一个项目,后来它使用SBT构建.但是当它试图执行sbt-release插件时,它会抱怨:

No tracking branch is set up. Either configure a remote tracking branch, or remove the pushChanges release part
Run Code Online (Sandbox Code Playgroud)

这是我的Jenkins GIT插件配置:

  • 存储库URL:指向.git文件
  • 姓名:空白
  • Refspec:空白
  • 要构建的分支/分支说明符(默认为空): develop(我正在构建的分支)
  • 签出/合并到本地分支(可选):开发

我按照回答这个问题的指南设置了这些项目.

我认为SBT-release插件需要远程跟踪才能在分支上制作标签.

mae*_*tr0 9

假设你想从master构建.

在GIT部分的Jenkins中选择:

Branches to build:     master
Run Code Online (Sandbox Code Playgroud)

还添加:

Additional Behaviours: 
      Check out to specific local branch:      master
Run Code Online (Sandbox Code Playgroud)

构建步骤

执行Shell:

git branch --set-upstream-to=origin/master master
Run Code Online (Sandbox Code Playgroud)

然后添加您的SBT构建步骤

sbt "release with-defaults"
Run Code Online (Sandbox Code Playgroud)


Luc*_*ano 6

要解决它,我别无选择,只能构建一个命令行脚本:

git checkout develop || git checkout -b develop
git reset --hard origin/develop
git branch --set-upstream-to=origin/develop develop
git pull
Run Code Online (Sandbox Code Playgroud)

并在SBT构建之前执行它.