ubuntu上gitlab团队协作指南
Ubuntu上GitLab团队协作全流程指南
一、GitLab环境准备(Ubuntu系统)
在Ubuntu上安装GitLab前,需先安装必要依赖包,确保系统支持GitLab运行:
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata postfix
添加GitLab官方APT仓库(替换为最新版本链接):
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
安装GitLab Community Edition(CE):
sudo apt install gitlab-ce
配置GitLab外部访问地址(修改EXTERNAL_URL
为服务器IP或域名):
sudo vim /etc/gitlab/gitlab.rb
# 找到external_url行,修改为:external_url 'http://your_server_ip'
sudo gitlab-ctl reconfigure # 应用配置
sudo gitlab-ctl start # 启动GitLab服务
访问http://your_server_ip
,完成初始配置(设置root用户密码)。
二、团队与项目管理
1. 创建团队(Group)
团队是GitLab中管理用户与项目的核心单元,便于权限统一分配。
登录GitLab后,点击顶部导航栏New group,输入组名(如dev-team
)、描述,选择Visibility(Private/Private),点击Create group。
2. 添加团队成员
进入组页面,点击左侧菜单Members,点击Invite a member,输入成员邮箱或用户名,选择角色(如Developer
),点击Invite。
- 角色权限说明:
Guest
:仅能查看项目;Reporter
:可查看代码、提交记录;Developer
:可推送代码、创建分支;Maintainer
:可管理项目设置、合并MR;Owner
:拥有组所有权,可删除组。
3. 创建项目
在组页面点击New project,输入项目名称(如web-app
),选择Visibility(Private),勾选Initialize with a README(可选),点击Create project。
三、代码协作流程
1. 克隆项目到本地
团队成员通过SSH或HTTPS克隆项目仓库(需提前配置SSH密钥,参考GitLab文档):
git clone git@your_server_ip:group_name/project_name.git # SSH方式
git clone https://your_server_ip/group_name/project_name.git # HTTPS方式
2. 创建与推送分支
开发新功能时,从main
(或master
)分支创建新分支(分支命名建议包含功能名称,如feature/login
):
git checkout main # 切换到主分支
git pull origin main # 拉取最新代码
git checkout -b feature/login # 创建并切换到新分支
修改代码后,提交并推送至远程仓库:
git add . # 添加修改的文件
git commit -m "Add login functionality" # 提交说明
git push origin feature/login # 推送分支至GitLab
3. 发起合并请求(Merge Request, MR)
在GitLab项目页面,点击右侧Merge Requests tab,点击New merge request:
- 选择Source branch(如
feature/login
)和Target branch(如main
); - 填写MR标题(如“Add login page”)和描述(说明修改内容);
- 点击Create merge request。
4. 代码审查与合并
- 审查代码:团队成员可在MR页面查看代码变更,通过Comment功能提出修改意见;
- 讨论与修改:开发者根据反馈修改代码,推送至同一分支,MR会自动更新;
- 合并分支:审查通过后,点击Merge按钮,将代码合并至
main
分支。合并后可选择Delete source branch(删除源分支)。
四、权限与安全管理
1. 用户权限管理
- 项目级权限:进入项目Settings >
Members,添加用户并分配角色(如
Developer
); - 组级权限:进入组Settings > Members,添加用户并分配角色,该角色的权限会继承至组内所有项目。
2. 保护分支(Protected Branches)
为防止main
分支被误操作,可设置保护分支:
进入项目Settings >
Repository >
Protected Branches,添加main
分支,设置:
- Allowed to push:仅
Maintainer
及以上角色; - Allowed to merge:仅
Maintainer
及以上角色; - 勾选Require a merge request before merging(强制通过MR合并)。
五、CI/CD自动化(可选但推荐)
GitLab CI/CD可实现代码自动构建、测试、部署,提升协作效率。
1. 配置.gitlab-ci.yml
在项目根目录创建.gitlab-ci.yml
文件,定义CI/CD流程(示例):
stages:
- build
- test
- deploy
build_job:
stage: build
script:
- echo "Building the project..."
- npm install # 示例:安装依赖
test_job:
stage: test
script:
- echo "Running tests..."
- npm test # 示例:运行测试
deploy_job:
stage: deploy
script:
- echo "Deploying to production..."
- scp -r . user@server:/var/www/html # 示例:部署到服务器
only:
- main # 仅在main分支推送时触发
2. 注册Runner
Runner是执行CI/CD任务的组件,需在项目Settings > CI/CD > Runners中注册:
- 点击Expand,获取
Registration Token
; - 在服务器上安装Runner(参考GitLab文档),运行注册命令:
gitlab-runner register
输入Registration Token
,选择执行器(如Shell
),完成注册。
通过以上步骤,团队可在Ubuntu上的GitLab中实现高效的代码协作,确保代码质量与项目进度。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu上gitlab团队协作指南
本文地址: https://pptw.com/jishu/731183.html