GitLab代码仓管理安装配置使用

Gitlab介绍

GitLab是一个基于Git的开源项目管理工具,它集成了版本控制、代码审查、持续集成(CI)/持续部署(CD)、自动化测试等多种功能,是一个完整的DevOps平台。以下是对GitLab的详细介绍:

一、主要特点和功能

  1. 版本控制系统:GitLab的核心是基于Git的版本控制系统,支持代码的版本管理、分支管理、合并操作等。
  2. 代码审查:提供代码审查功能,帮助团队提高代码质量,确保代码符合项目标准。
  3. 持续集成/持续部署(CI/CD):通过内置的CI/CD工具,实现自动化构建、测试和部署,提高开发效率和产品质量。
  4. 问题跟踪:内置的问题跟踪系统,帮助团队管理和跟踪项目中的问题和任务。
  5. Wiki:提供项目相关的文档管理功能,方便团队成员共享知识和信息。
  6. 安全性:提供多种安全功能,如分支权限、合并请求审批流程等,保护代码的安全和项目的稳定。
  7. 可视化界面:提供一个直观易用的图形用户界面,使得项目管理更加便捷。

使用概况

以下我配置访问端口为8888,所有浏览器:http://127.0.0.1:8888访问

网站登录管理的用户名和密码进入gitlab的命令中配置:sudo gitlab-rails console

配置可以正常登录后,就都是在浏览器里面操作了

在Ubuntu上配置和使用GitLab,你可以按照以下步骤进行操作:

  • 更新系统软件包列表:
sudo apt-get update
  • 安装必要的依赖项:
sudo apt-get install -y ca-certificates curl openssh-server
  • 添加GitLab的APT仓库并安装GitLab包:
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
sudo EXTERNAL_URL="http://your_domain_or_ip" apt-get install gitlab-ee
  • 配置防火墙以允许HTTP和SSH流量通过:
sudo ufw allow http sudo ufw allow ssh sudo ufw enable sudo ufw status
  • 启动并配置GitLab服务:
sudo gitlab-ctl reconfigure

安装后使用 

  1. 访问GitLab Web界面: 在浏览器中输入http://your_domain_or_ip,你应该能够看到GitLab的登录页面。使用默认的管理员账号(用户名:root,密码:5iveL!fe)登录。
  2. 更改默认管理员密码: 登录后,导航到"Admin Area" -> "Sign-in as root",然后点击"Reset the admin password"链接来设置新密码。
  3. 配置GitLab
sudo nano /etc/gitlab/gitlab.rb# 默认用户名root,我这里中文和密码未生效,密码需要在后面命令中更改,有效参数为external_url
gitlab_rails['gitlab_default_language'] = 'zh-CN'
gitlab_rails['initial_root_password'] = 'Huang123'
external_url = 'http://127.0.0.1:8888'
#gitlab 监听的端口
nginx['listen_port'] = 8888# 其他配置,启用电子邮箱
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "your-email@example.com"
gitlab_rails['smtp_password'] = "your-email-password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true# 启用用户注册
gitlab_rails['gitlab_signup_enabled'] = false# 启用身份验证
gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' # remember to close this block with 'EOS' on next linemain: # 'main' is the GitLab 'provider ID' of this LDAP serverlabel: 'LDAP'host: 'ldap.example.com'port: 389uid: 'sAMAccountName'method: 'plain' # "tls" or "ssl" or "plain"bind_dn: 'CN=admin,DC=example,DC=com'password: 'password'active_directory: trueallow_username_or_email_login: falseblock_auto_created_users: falsebase: 'ou=users,dc=example,dc=com'user_filter: ''
EOS
  • 启动GitLab
# 启动服务
sudo gitlab-ctl start
# 启动并更新配置
sudo gitlab-ctl reconfigure
# 重启
sudo gitlab-ctl restart
  • 调试,更改登录密码
# 进入gitlab命令调试
sudo gitlab-rails console
# 查看用户名和密码
User.all.each do |user|puts "Username: #{user.username}, Password: #{user.password}"
end
# 更改密码,使用邮箱或用户名登录,更改密码时不能太简单,复制可能出现错误
user = User.find_by(email: 'admin@example.com')  
user = User.find_by(username: 'your_username')
user.password = 'newpassword'  
user.password_confirmation = 'newpassword'  
user.save!
  • 更改语言为简体中文

  • 常用命令(gitlab-ctl)

如:gitlab-ctl stop停止

  cleanseDelete *all* gitlab data, and start from scratch.helpPrint this help message.reconfigureReconfigure the application.show-configShow the configuration that would be generated by reconfigure.uninstallKill all processes and uninstall the process supervisor (data will be preserved).
Service Management Commands:graceful-killAttempt a graceful stop, then SIGKILL the entire process group.hupSend the services a HUP.intSend the services an INT.killSend the services a KILL.onceStart the services if they are down. Do not restart them if they stop.restartStop the services if they are running, then start them again.restart-exceptRestart all services except: service_name ...service-listList all the services (enabled services appear with a *.)startStart services if they are down, and restart them if they stop.statusShow the status of all the services.stopStop the services, and do not restart them.tailWatch the service logs of all enabled services.termSend the services a TERM.usr1Send the services a USR1.usr2Send the services a USR2.

Gitlab相关的四种工具:Jenkins、SVN、BitBucket、Git、gitea(轻量级全功能)

除了BitBucket其他都用过,我搜Git的使用教程附加在后面。

gitea可以配置提交代码后通过webhook自动触发Jenkins构建版本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/460646.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#/WinForm 基于ffmpeg视频流转GIF

源码&#xff1a;https://gitee.com/feng-cai/screenshot-recording

Pinctrl子系统pinctrl_desc结构体进一步介绍

往期内容 本专栏往期内容&#xff1a; Pinctrl子系统和其主要结构体引入 input子系统专栏&#xff1a; 专栏地址&#xff1a;input子系统input角度&#xff1a;I2C触摸屏驱动分析和编写一个简单的I2C驱动程序 – 末片&#xff0c;有往期内容观看顺序 I2C子系统专栏&#xff1a;…

基于OSS搭建在线教育视频课程分享网站

OSS对象存储服务是海量、安全、低成本、高持久的存储服务。适合于存储大规模非结构化数据&#xff0c;如图片、视频、备份文件和容器/虚拟机镜像等。 安装nginx wget https://nginx.org/download/nginx-1.20.2.tar.gz yum -y install zlib zlib-devel gcc-c pcre-devel open…

研究轮腿运动学方案的看法

本文学习自电科中山柳同学的方案分享 遇到的问题&#xff1a; 1、轮毂输出力矩不足以配合腿部收敛机体姿态&#xff08;即腿部关节输出和轮毂输出都被LQR拉大了&#xff0c;但是轮毂最大力矩不够用了&#xff09; 可以引入MPC对LQR输出的反馈增益矩阵K 进行反向增益&#xf…

Linux学习_11

第十章管理Linux的联网 主要包括配置网络&#xff0c;通过域名访问主机&#xff0c;从网站瞎子啊文件&#xff0c;VMware三种网络模式 配置网络 概念 网络接口是指网络中的计算机或网络设备与其他设备实现通讯的进出口&#xff0c;一般是指计算机的网络接口即网卡设备 从RHEL7开…

VBto Converter是一款功能强大的工具,可让您快速轻松地将Microsoft Visual Basic 6.0项目转换

VBto Converter是一款功能强大的工具&#xff0c;可让您快速轻松地将Microsoft Visual Basic 6.0项目转换 1、简介2、官方网站3、本站下载&#xff08;已汉化&#xff09; 1、简介 VBto Converter V2.90 版本&#xff0c;是一款功能强大的工具&#xff0c;可让您快速轻松地将M…

巨好看的登录注册界面源码

展示效果 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name"viewport" content"widthdevic…

突破挑战,创新前行 | 生信科技SOLIDWORKS 2025新品发布会·合肥站精彩回顾

2024年10月18日&#xff0c;由生信科技举办的首场SOLIDWORKS 2025新产品发布会在安徽合肥圆满落幕。现场邀请到制造业的专家学者们一同感受SOLIDWORKS 2025最新功能&#xff0c;探索制造业数字化转型之路。 合肥站活动日&#xff0c;由生信科技副总经理徐建开场。他以智造无界&…

【解决方案】微信小程序如何使用 ProtoBuf 进行 WebSocket 通信

前言 故事背景 简单说下背景&#xff0c;项目中需要用 ProtoBuf 协议转换请求参数&#xff0c;并通过 WebSocket 进行双向通信。重点&#xff01;一个是 web端&#xff08;Vue3 TS&#xff09;&#xff0c;一个是微信小程序端&#xff08;原生 JS&#xff09;。 剧情发展 …

Copilot一又成编程助手Top1,GitHub官宣接入Claude+Gemini!OpenAI的Canvas沦为备胎

Copilot一又成编程助手Top1&#xff0c;GitHub官宣接入ClaudeGemini&#xff01;OpenAI的Canvas沦为备胎 &#x1f31f; &#x1f44b; 大家好&#xff0c;我是猫头虎&#xff01;今天带大家来深度解读GitHub Copilot 的最新动态&#xff01;在第十届 GitHub 开发者大会上&…

三周精通FastAPI:24 OAuth2 实现简单的 Password 和 Bearer 验证

官网文档&#xff1a;https://fastapi.tiangolo.com/zh/tutorial/security/simple-oauth2/ OAuth2 实现简单的 Password 和 Bearer 验证 本章添加上一章示例中欠缺的部分&#xff0c;实现完整的安全流。 获取 username 和 password 首先&#xff0c;使用 FastAPI 安全工具获…

Hugging Face | 个人使用笔记

一、网站介绍 模型和数据集都是开源的 搜索模型是默认按照趋势排序的 二、模型具体页面 三、调用API小练习 模型网站&#xff1a;flux-RealismLora 1.点击View Code 获取参考代码 2.创建一个python文件复制进一个代码编辑器 注意&#xff1a;需要补充最后一行保存代码 …

用unity XR interaction Toolkit 制作垃圾分类虚拟仿真项目

项目效果演示&#xff1a; 垃圾分类虚拟仿真项目演示 1.环境配置 选择universal 3D(通用渲染管道)项目&#xff08;不然导入素材包会丢失材质&#xff09;。 选择Window->Package Manager,安装其中的XR interaction Toolkit。 选择其中的Samples,导入Starter Assets。 选择…

基于web的便捷饭店点餐小程序的设计与实现(lw+演示+源码+运行)

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对高校教师成果信息管理混乱&#xff0c;出错率高&#xff0c;信息安全…

快速入门HTML

欢迎关注个人主页&#xff1a;逸狼 创造不易&#xff0c;可以点点赞吗 如有错误&#xff0c;欢迎指出~ 目录 第一个html文件 标签 h1~h6 p >段落标签 br > 换行标签 img >图片标签 a >超链接标签 表格标签 表单标签 表单控件 form表单 ⽆语义标签:div&span 综…

【简道云 -注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…

C#与C++交互开发系列(十七):线程安全

前言 在跨平台开发和多线程编程中&#xff0c;线程安全是不可忽视的重要因素。C和C#中提供了各自的线程同步机制&#xff0c;但在跨语言调用中&#xff0c;如何确保数据一致性、避免数据竞争和死锁等问题&#xff0c;是开发人员必须考虑的重点。 本文将介绍在C#和C交互开发中确…

docker-minio启动参数

完整命令 docker run -p 9000:9000 -p 9090:9090 -v /opt/minio/data:/data -d --name minio -d --restartalways -e "MINIO_ACCESS_KEYminio" -e "MINIO_SECRET_KEYminioadmin123" minio/minio server --console-address ":9090" -address &…

理解 CSS 中的绝对定位与 Flex 布局混用

理解 CSS 中的绝对定位与 Flex 布局混用 在现代网页设计中&#xff0c;CSS 布局技术如 flex 和绝对定位被广泛使用。然而&#xff0c;这两者结合使用时&#xff0c;可能会导致一些意想不到的布局问题。本文将探讨如何正确使用绝对定位元素&#xff0c;避免它们受到 flex 布局的…

书生大模型实战营 L0 入门岛

书生大模型训练营入门岛任务——训练营链接 1. Linux前置知识 任务&#xff1a;端口转发 当使用vscode远程连接服务器时&#xff0c;在服务器运行的任务&#xff0c;vscode会自动帮忙进行端口映射&#xff0c;方便本地进行访问。 2. Python前置知识 任务1&#xff1a;Leec…