存储库中脚本内的Git签出
我有一个git存储库,其中包含build.sh脚本。build.sh执行以下操作:存储库中脚本内的Git签出,git,github,automation,Git,Github,Automation,我有一个git存储库,其中包含build.sh脚本。build.sh执行以下操作: 如果需要,签出其他分支(git签出{branchname}) 递归子模块更新 docker代码的构建 对于步骤1,参数主要是“master”,而不是代码冻结时间。由于它是一个新的克隆,我希望git checkout master说已经在master上了。但它却表示切换到了分支“master”。您的分支在“源站/主站”后740次提交,可以快速转发 当我在机器上新克隆存储库并运行此脚本时,我看到发生了意外的事情。步骤
git checkout master
说已经在master上了。但它却表示切换到了分支“master”。您的分支在“源站/主站”后740次提交,可以快速转发
当我在机器上新克隆存储库并运行此脚本时,我看到发生了意外的事情。步骤1,使其返回到过去的几个提交并开始构建。以下是相关日志:
REGISTRY=xyz-ci.olympus.abc.com TAG=master FROM_TAG=master ./build.sh
05:33:54 Previous HEAD position was 38364c0cfd Update a-comp submodule
05:33:54 Switched to branch 'master'
05:33:54 Your branch is behind 'origin/master' by 740 commits, and can be fast-forwarded.
05:33:54 (use "git pull" to update your local branch)
05:33:54 fatal: could not read Username for 'https://devgit.abc.com': No such device or address
我尝试了以下方法来解决此问题:
将默认分支名称从master
更改为origin/master
git远程设置url源git@devgit.abc.com:WebApps/myProject.git
作为签出前的第一步
他们两个都没帮上忙。它仍然可以追溯到旧的提交。欢迎使用任何指针。在实际签出之前,在脚本中嵌入以下git fetch origin master:master
。如输出消息所示,git签出本身成功。失败的步骤是随后的git fetch
,可能是一个子模块的步骤。记住,每个子模块都是一个Git存储库;每个Git存储库都可能需要用户名和密码,这取决于您的设置方式。