git - 使用Gitlab的API,如何在分支之间切换?

标签 git gitlab

我想使用 Gitlab 的 API 从我的 master 分支切换到我的 development 分支,我已经研究了所有记录的可用 API here ,但没有这样的 API。

以前有人尝试过这种情况吗?因为这是一种非常常见的情况?

是否可以通过 API 执行相同的操作?

最佳答案

在分支之间切换?

在 GitLab 服务器端(即 Gitlab API 所指的),您无需切换分支,因为 GitLab 正在管理 bare repos (没有工作树的存储库, checkout 任何分支)。

您可能的意思是:“如何更改默认分支”(当用户克隆由 GitLab 管理的远程存储库时默认 checkout 的分支)。

gitolite 可以做到这一点(参见“git change default branch (gitolite) ”)。
但是,GitLab 则不然:相关 API 为“Projects ”,但“branch ”部分不包含任何内容来更改裸露文件的 HEAD 的符号引用。由 GitLab 管理的存储库。

这意味着您必须在裸存储库中访问服务器本身才能执行:

git-symbolic-ref HEAD refs/head/development 

onionjake提到in the comments :

If you are using the omnibus packages you might not have git installed in the usual spot.
I had to do:

/opt/gitlab/embedded/bin/git symbolic-ref HEAD refs/heads/development.

关于git - 使用Gitlab的API,如何在分支之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17341328/

相关文章:

html - 我的 Gitlab 存储库中的 Web 访问 HTML 文件

c++ - Git 挂起的更改不起作用

git - 是否可以让 git 在提交时忽略 UTF-8 BOM?

git - 无法使用 ssh key 克隆 Gitlab 私有(private)仓库。 key 验证不起作用

git - 跨所有分支的相同全局远程 gitignore 文件

kubernetes - GitLab 9.x Kubernetes 集成

gitlab - Argocd 与 GITLAB 存储库的连接

gitlab - 如何让图形在 Mermaid + Jekyll/GitLab Pages 中呈现?

ubuntu - 服务器意外关闭网络连接gitlab和gitolite

Git Squash 作者按顺序提交以压缩历史记录