我使用 git 设置了 Jenkins,并使用 github 挂钩进行持续集成。我正在使用自定义工作区目录。在源代码管理下,我使用 Git。我只检查了主分支,并且在“本地子目录(可选)”字段中将 $GIT_BRANCH-$GIT_COMMIT 作为我的目录位置。在构建部分,我正在执行一个 shell,我正在执行:
- pwd
- ls
- cd $GIT_BRANCH-$GIT_COMMIT
- ...
我遇到的问题是在执行“cd $GIT_BRANCH-$GIT_COMMIT”时。我收到以下错误:
- /tmp/hudson7624299777846840848.sh: 4: cd: can't cd to master-9297429dba145737291168f284796421f73c0ee3
每个密码,我在正确的目录中。 ls
没有将目录显示为正在创建,这就是我收到此错误的原因。构建失败后,我检查了构建主机以查看是否已执行克隆并已创建目录。它似乎没有。但是,当我手动执行构建时,构建通过了。 ls
显示目录。
任何关于为什么会发生这种情况的见解将不胜感激。我的目标是为每个构建创建一个包含最新源的新目录,这样我就可以维护测试、指标等的历史记录。我是 Jenkins 的新手,所以如果有更好的方法可以做到这一点,我很乐意到建议。