Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 带有Go.CD和Maven的部署管道_Git_Maven_Go Cd - Fatal编程技术网

Git 带有Go.CD和Maven的部署管道

Git 带有Go.CD和Maven的部署管道,git,maven,go-cd,Git,Maven,Go Cd,所以,我的问题相当简单。我想用GO CD构建一个管道,在实际构建工件的单独阶段进行功能测试。与下图相似。 我的FT阶段有多个我想并行运行的作业(使用更多的Go代理)。 但我如何做到这一点?因为如果我在两个阶段都签出了材料(git repo),并且有人在第一阶段触发后但在第二阶段之前提交了,那么我就放弃了CI&CD最重要的规则:可复制构建 在Jenkins中,我标记在第一阶段签出的提交,然后在下一个作业中显式签出该标记。但由于某些原因,Go不支持git标记:| 我可以运行任务并执行“git ch

所以,我的问题相当简单。我想用GO CD构建一个管道,在实际构建工件的单独阶段进行功能测试。与下图相似。

我的FT阶段有多个我想并行运行的作业(使用更多的Go代理)。 但我如何做到这一点?因为如果我在两个阶段都签出了材料(git repo),并且有人在第一阶段触发后但在第二阶段之前提交了,那么我就放弃了CI&CD最重要的规则:可复制构建

在Jenkins中,我标记在第一阶段签出的提交,然后在下一个作业中显式签出该标记。但由于某些原因,Go不支持git标记:|


我可以运行任务并执行“git checkout$tagname”,但这就是我继续使用Jenkins的原因。这太麻烦了

GoCd确保管道中的所有阶段都使用相同的VCS版本。你不必结账,GoCd会帮你的。简单