GitLab 使用指南:从入门到协作
GitLab 是一个基于 Git 的 DevOps 平台,不仅提供代码托管,还集成了 CI/CD、项目管理、安全扫描等功能。对于个人开发者或团队协作,掌握以下核心操作即可覆盖绝大多数日常需求。
一、准备工作:账号与 SSH 密钥
注册登录:访问 GitLab 官网(SaaS 版)或公司自建的 GitLab 服务器地址。使用邮箱或 GitHub/Google 账号注册。
添加 SSH 密钥(推荐):这可以让你免密推送代码。
本地生成密钥:ssh-keygen -t ed25519 -C "your_email@example.com"
复制公钥:cat ~/.ssh/id_ed25519.pub(Windows 在 C:\Users\用户名\.ssh\ 目录下)
进入 GitLab → 右上角头像 → Preferences → SSH Keys,粘贴公钥并保存。
二、创建项目与获取代码
新建项目:
点击顶部导航栏的 "+" 号 → New project。
选择 Create blank project(空白项目)。
填写项目名称(如 my-first-project)、URL(可选)、可见性等级(Private/Internal/Public)。
点击 Create project。
将代码推送到 GitLab:
三、日常协作核心流程
使用 GitLab 进行团队协作,通常遵循 "Issue → 分支 → Merge Request → 审查 → 合并" 的流程。
管理任务(Issue):
在项目左侧菜单点击 Issues → New issue。
填写标题、描述(可用 Markdown),指派给负责人(Assignees),添加标签(Label,如 bug、feature)和里程碑(Milestone)。
Issue 就像任务卡片,用于追踪功能开发、Bug 修复等所有工作。
新建分支进行开发:
可以在 GitLab 网页上直接创建分支:进入 Repository → Branches → New branch。
更推荐本地创建:git checkout -b feature-login(基于 main 分支)。
将分支推送到远程:git push origin feature-login。
发起合并请求(Merge Request / MR):
在项目左侧菜单点击 Merge Requests → New merge request。
源分支选择 feature-login,目标分支选择 main。
填写 MR 标题和描述(建议关联 Issue,例如写 Closes #1,合并后会自动关闭对应 Issue)。
指定评审人(Reviewer),添加审核人(Approver)。
点击 Create merge request。
代码审查与合并:
评审人收到通知后,进入 MR 页面查看代码差异(Changes 标签页)。
可以在具体行上添加评论或建议(Suggestion)。
当所有审核通过(Approve),CI 流水线为绿色(后面会提到),发起人即可点击 Merge 按钮。
合并后,可以勾选 "Delete source branch" 来删除 feature-login 分支,保持仓库整洁。
四、自动化流水线(CI/CD 基础)
GitLab 最强大的功能之一是 CI/CD。只需在项目根目录添加一个 .gitlab-ci.yml 文件,每次推送代码时,GitLab 就会自动运行你定义的任务(如测试、构建、部署)。
示例 .gitlab-ci.yml:
yaml
stages:
- test - buildtest-job:
stage: test script:
- echo "Running unit tests..." - npm install - npm testbuild-job:
stage: build script:
- echo "Building the application..." - npm run build
五、其他实用功能
Wiki:在左侧菜单找到 Wiki,可以编写项目文档,支持 Markdown。
Snippets:保存或分享一小段代码或配置,不需要整个仓库。
Project / Group Members:添加成员并分配角色(Guest, Reporter, Developer, Maintainer, Owner)。
Web IDE:在 GitLab 网页上直接编辑、提交代码,适合小修改或快速原型。
六、常见问题速查
| 场景 | 解决方案 |
|---|
| 忘记拉取最新代码,推送被拒绝 | git pull --rebase origin main,然后 git push |
| 想撤销最近的提交 | git reset --soft HEAD~1(保留改动)或 git reset --hard HEAD~1(完全丢弃) |
| 看到 "403 Forbidden" | 检查项目可见性,或联系 Maintainer 添加你的成员权限 |
| 想复制/转移项目 | 项目设置 → Advanced → Export / Import |
总结
掌握 GitLab 的核心就是三条线:
代码线:Clone → Branch → Commit → Push → MR。
流程线:Issue → MR → Review → Merge。
自动化线:.gitlab-ci.yml 定义流水线,自动测试/部署。
对于个人使用,把它当作带 Web UI 的 Git 服务器;对于团队,充分利用 Merge Request 和 CI/CD 来保证协作质量和效率。建议先创建一个测试项目,亲手走一遍 “创建 Issue → 新建分支 → 发起 MR” 的流程,10 分钟就能上手。
上一条:suse的ip配置
下一条:没有了!