关于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 [email protected]

这里出现: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 即可完成分支的合并。

相关推荐
大白要努力!9 小时前
在 Android Studio 中使用 GitLab 添加图片到 README.md
android·gitlab·android studio
星释9 小时前
如何编写GitLab-CI配置文件
ci/cd·gitlab
馨羽的玩具14 小时前
gitlab rss订阅失败
gitlab
t198751281 天前
jenkins结合gitlab实现CI
ci/cd·gitlab·jenkins
一颗小豆1 天前
07-接着玩-linux的CD/CI全流程体验
gitlab
乐~~~3 天前
gitLab 切换中文模式
gitlab
炒毛豆3 天前
git 如何解决分支合并冲突(VS code可视化解决+gitLab网页解决)
git·gitlab
m0_555762904 天前
GitLab CI、GitHub Actions和Jenkins进行比较
ci/cd·gitlab·github
☆凡尘清心☆4 天前
Centos7安装gitlab
gitlab