目前我正在尝试测试GitLab CI上的master和分支之间的差异。
var branch = require('git-branch'),
gitDiffTree = require('git-diff-tree'),
path = require('path');
var branch = process.env.CI_BUILD_REF_NAME || branch.sync();
var repoPath = path.resolve(process.env.REPO || (__dirname + '/../.git'));
{
repoPath: repoPath,
gitDiffTreeOptions: {
rev: 'master..' + branch
}
}
以下是我正在使用的重要代码。这在本地工作得很好,但是当在GitLab CI上运行时它会fatal: bad revision 'master.. branch'
branch
两次rev: HEAD
变量填充相同的值。有什么建议如何让这个工作?它以前曾经用input.length
做了很好的工作,因为它只测试了分支中最近的提交而不是所有提交。
答案 0 :(得分:0)
我遇到了类似的问题(运行 bad revision 'master'
和类似命令时为 git diff master -- .
),并使其工作如下:
git fetch origin master
(从管道中)origin/master
而不是 master
我认为 gitlab 获取存储库内容的方式不会导致 master
成为本地有效的分支名称。我对 git 的胆量不够熟悉,无法准确指出原因。