Ubuntu环境下GitLab项目管理实践指南
在Ubuntu上部署GitLab前,需完成系统初始化及依赖安装:
sudo apt update && sudo apt upgrade -y更新系统包;安装必要依赖sudo apt install -y curl openssh-server ca-certificates tzdata perl(支持GitLab运行及SSH连接)。curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash添加GitLab社区版(CE)的APT源。sudo apt install gitlab-ce安装GitLab;编辑配置文件sudo vim /etc/gitlab/gitlab.rb,设置external_url(如http://your_server_ip或域名),若需邮件通知则配置SMTP参数(如gitlab_rails['smtp_enable'] = true);运行sudo gitlab-ctl reconfigure应用配置,sudo gitlab-ctl start启动服务。http://your_server_ip,使用默认管理员账号root及初始密码(可通过cat /etc/gitlab/initial_root_password查看)登录,修改密码并完成基础配置。my-web-app)、描述,选择可见性级别(Private/Private/ Internal,建议团队项目设为Private),点击“Create Project”即可生成代码仓库。main/master用于稳定发布,开发分支develop用于集成,特性分支feature/*用于功能开发,修复分支hotfix/*用于紧急bug修复),确保代码稳定性与可追溯性。git clone git@your_server_ip:username/project_name.git(SSH)或git clone https://your_server_ip/username/project_name.git(HTTPS)克隆仓库;本地修改后执行git add .(添加变更)、git commit -m "commit message"(提交说明)、git push origin feature/branch-name(推送至远程特性分支)。.gitlab-ci.yml文件,定义CI/CD流水线(如构建、测试、部署)。示例配置:stages:
- build
- test
- deploy
build_job:
stage: build
script:
- echo "Building the project..."
test_job:
stage: test
script:
- echo "Running tests..."
deploy_job:
stage: deploy
script:
- echo "Deploying the project..."
only:
- main # 仅main分支变更时触发部署
该配置会在每次推送代码时自动触发流水线,依次执行构建、测试、部署任务。feature/login)与目标分支(如develop),填写变更说明(可关联Issue),点击“Create merge request”。/var/log/gitlab下的日志文件),避免日志过大占用磁盘空间。/etc/gitlab/gitlab.rb,设置gitlab_rails['backup_keep_time'] = 604800(保留7天)),运行sudo gitlab-backup create手动触发备份;恢复时停止GitLab服务,执行sudo gitlab-backup restore BACKUP=timestamp,恢复后重启服务。