关于GitLab代码仓库工具使用分享

前言

工作中我们经常使用到代码仓库,如:GitLab和GitHub。 在使用过程中,可能有的设置不知道在哪里,本文记录 GitLab 工具使用过程中角色分类、角色权限、仓库路径、分组、分支合并请求等基础知识,希望对你有所帮助。

GitLab和GitHub区别

  • 开源与闭源:GitLab是开源的,意味着它的源代码可以被任何人查看、修改和分发,而GitHub虽然提供了一些开源项目,但本身是闭源的。

  • 私有仓库:GitLab提供了无限的私有仓库,而GitHub的私有仓库数量有限,除非付费。

  • 集成和功能:GitLab提供了更全面的集成和功能,包括CI/CD、容器注册表等,而GitHub主要集中在代码托管和协作上。

  • 核心区别对比

维度 GitHub GitLab
定位 全球最大开源社区(社交化编程) 一体化DevOps平台(企业级全流程)
托管模式 公有云为主 支持公有云+私有化部署
CI/CD 需依赖GitHub Actions 内置GitLab CI/CD(.gitlab-ci.yml)
权限管理 基础团队权限 精细化权限(子组、分支保护等)
Wiki/文档 基础Wiki功能 内置文档系统+知识库管理
免费私有库 2019年后开放 始终支持免费私有库
典型用户 开源项目、个人开发者 企业团队、需要完整DevOps流程的组织

GitLab配置ssh拉取代码

mac查看本地是否有ssh密钥

cd ~/.ssh

ls查看当前文件夹,如果在输出的文件列表中发现id_rsaid_rsa.pub的存在,证明本地已经存在SSH密钥。

cat ./id_rsa.pub 查看公钥,复制

打开gitlab网站,点击头像-偏好设置-ssh密钥进行配置

  • 验证ssh是否成功

终端输入: ssh -T git@github.com

这里出现:successfully、Welcome即为绑定成功,可以看到我的github、gitlab的ssh都配置成功了!

之后就可以在gitlab中使用 ssh的方式进行拉取代码了。

GitLab角色相关

查看自己的角色权限

要查看自己在某个GitLab项目中的角色以及权限,操作如下:

  • 登录到GitLab。
  • 进入你想查看权限的项目页面。
  • 在左侧菜单中,点击 Members(成员)
  • 在成员列表中,你可以看到自己和其他成员的角色。

各角色权限级别

gitLab中的角色级别从低到高依次为:

  • Guest(访客):只能查看项目的公开内容。
  • Reporter(报告者):可以查看和克隆代码,但不能推送代码。
  • Developer(开发者):可以查看、克隆和推送代码。
  • Maintainer(维护者):管理员权限,可以管理项目设置和成员。
  • Owner(拥有者):拥有项目的所有权限(仅限于个人项目)。

各个角色拥有的权限(图片摘自网络):

分配权限

如果你是项目的 MaintainerOwner,分配权限操作如下:

  • 进入你想管理的项目页面。
  • 在左侧菜单中,点击 Members(成员)
  • 点击 Invite members(邀请成员) 按钮。
  • 输入成员的用户名或邮箱地址。
  • 选择适当的角色权限级别(Guest、Reporter、Developer、Maintainer)。
  • 点击Invite按钮。

组成员权限Project members permissions

任何用户都可以将自己从组中删除,除非他们是该组的最后一个所有者。下表描述了组中的各种用户权限级别。

参数说明:

  • Browse group:浏览分组信息

  • Edit group:修改分组

  • Create subgroup:创建子分组

  • Create project in group:给项目创建分组

  • Manage group members:管理分组成员

  • Remove group:删除分组

  • Manage group labels:管理分组标签

修改仓库访问路径、分组

左侧菜单【Settings】->【General】->【Advanced】->【Expand】->【Change path】,只能修改最后一段Path,其中不能再包含 /,修改后点击 "Change path" 即可

如果该仓库是有分组的还会出现如下内容:

可以对该仓库进行分组修改。

提交分支合并请求

左侧菜单点击:

  • repository
  • branches 可以看到分支
  • 选择要合并的分支,如:develop 点击 Merge request

提交请求后,等待有权限的管理员审核即可。

管理员收到分支请求后会看到如下界面,点击 merge 即可完成分支的合并。

相关推荐
不念霉运1 天前
2025 Gitee vs. GitLab:全面对比与选择指南
gitee·gitlab
水瓶_bxt1 天前
创建 GitLab Runner 使用CICD自动化部署容器
eureka·自动化·gitlab
黑心的奥利奥3 天前
Docker配置Gitlab-runner实现自动化容器化部署前端项目
docker·自动化·gitlab
wuzuyu3653 天前
在腾讯云上安装gitlab
云计算·gitlab·腾讯云
xiaodaiwang3 天前
OpenEuler 22.03 系统上安装配置gitlab runner
gitlab
TimberWill4 天前
gitlab私服搭建
gitlab
中东大鹅4 天前
访问 gitlab 跳转 0.0.0.0
gitlab
guygg884 天前
配置本地git到gitlab并推送
git·gitlab
大A崛起5 天前
Gitlab-CI实现组件自动推送
ci/cd·gitlab·github
越来越无动于衷5 天前
GitLab 社区版 10.8.4 安装、汉化与使用教程
gitlab