如果开发人员正在develop
分支上,则用于一个新项目
git clone <git_url>
应该能够在不使用develop
选项的情况下自动在本地克隆-b
分支,这样
$ git branch -a # after clone should give
* develop
remotes/origin/HEAD -> origin/develop
remotes/origin/develop
当开发人员使用命令develop
将本地分支(origin/develop
)推送到远程存储库(git push origin develop
)时,我的理解是,更改已推送到origin/master
,如果 remotes/origin/HEAD
指向origin/master
,则与此comment
问题:
1)
是否建议在执行上述两项任务之前运行git remote set-head origin develop
并在远程存储库中设置HEAD
指针?由任何开发人员
2)
不管远程存储库中的git push origin develop
值如何,origin/develop
都会推送更改remotes/origin/HEAD
?
3)
我们在GitLab和Jenkins之间使用webhook。 GitLab plugin提供的env.gitlabSourceBranch
是否给出了remotes/origin/HEAD
指向的分支名称?如果是,如何获取发生推送事件的分支名称?通过webhook。
以下是在GitLab中完成的设置,以检索发生新提交的分支名称:
node('worker_node'){
stage('stage1'){
def repoName = env.gitlabSourceRepoName
println "Repository Name: " + repoName // gives correct repo name
def branchName = env.gitlabSourceBranch
println "Branch name: " + branchName // gives always 'master' as value
}
}