官网安装说明地址:https://about.gitlab.com/install/#centos-7
安装依赖
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
安装邮件服务(可选)
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
防火墙设置(如果你开启了防火墙,需要执行以下代码,否则不用执行)
sudo firewall-cmd —permanent —add-service=http
sudo systemctl reload firewalld
安装GitLab(这里安装的是 gitlab-ee企业版,gitlab-ce是社区版)
sudo yum install -y gitlab-ee

出现Complete,说明安装成功
配置域名:vim /etc/gitlab/gitlab.rb
## GitLab URL
##! URL on which GitLab will be reachable.
##! For more details on configuring external_url see:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
#外部访问url(经过编译后,自动将这个配置编译到nginx配置,nginx就无需配置了)
external_url ‘http://wwww.mygeilab.com
注意:gitlab中有自定义nginx,配置external_url后,这里如果有端口就会直接重新生成这个nginx的配置,如果不满足你的需求,你可以修改nginx的配置。
配置GitLab的nginx(可选):vim /var/opt/gitlab/nginx/conf/gitlab-http.conf
# 外网访问的端口,如果服务器已经有服务器占用了80,那么这里可以改成其它
listen *:8888;
server_name gitlab.test.domain.com;

set $http_host_with_default “gitlab.test.domain.com:8888”;
配置端口:命令状态输入/unicorn[‘port’],按Enter进入查找状态,按n往下查找,直到看到unicorn[‘port’] =8080,修改端口,删除#号,解除注释状态
### Advanced settings
# unicorn[‘listen’] = ‘localhost’
#默认值就是8080。如果端口被占用,可将8080修改为其它(例如:9090)
unicorn[‘port’] = 8080
启动GitLab
gitlab-ctl reconfigure
修改账号密码
使用root权限登录服务器并启动Ruby on Rails 控制台
[root@localhost ~]# gitlab-rails console production
Loading production environment (Rails 4.2.8)
irb(main):001:0>
gitlab-rails console production 命令执行后,感觉没响应,耐心等待1分钟左右
有多种方式可以重置密码
irb(main):001:0> user = User.where(id: 1).first
=> #
irb(main):002:0>user.password = ‘123456’
irb(main):002:0>user.password_confirmation = ‘123456’
irb(main):002:0>user.save
或者下面这种
irb(main):001:0> user = User.find_by(email: ‘admin@local.host’)
=> #
irb(main):002:0>user.password = ‘123456’
irb(main):002:0>user.password_confirmation = ‘123456’
irb(main):002:0>user.save
修改密码后可以尝试使用新密码登录。

1.GitLab配置生效
#使配置生效
gitlab-ctl reconfigure
#重新启动GitLab
gitlab-ctl restart
注意:执行 reconfigure 命令会把gitlab的nginx组件的配置还原,导致自定义修改的端口以及域名等都没有了。
2.查看gitlab版本
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
3.GitLab备份和恢复
备份
# 可以将此命令写入crontab,以实现定时备份
/usr/bin/gitlab-rake gitlab:backup:create
备份的数据会存储在/var/opt/gitlab/backups,用户通过自定义参数 gitlab_rails[‘backup_path’],改变默认值。
恢复
# 停止unicorn和sidekiq,保证数据库没有新的连接,不会有写数据情况
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq

# 进入备份目录进行恢复,1476900742为备份文件的时间戳
cd /var/opt/gitlab/backups
gitlab-rake gitlab:backup:restore BACKUP=1476900742
cd -

# 启动unicorn和sidekiq
sudo gitlab-ctl start unicorn
sudo gitlab-ctl start sidekiq
4.GitLab发送邮件配置
gitlab_rails[‘smtp_enable’] = true
gitlab_rails[‘smtp_address’] = “smtp.exmail.qq.com”
gitlab_rails[‘smtp_port’] = 25
gitlab_rails[‘smtp_user_name’] = “huangdc@domain.com“
gitlab_rails[‘smtp_password’] = “smtp password”
gitlab_rails[‘smtp_authentication’]= “plain”
gitlab_rails[‘smtp_enable_starttls_auto’]= true
gitlab_rails[‘gitlab_email_from’]= ‘huangdc@domain.com’
gitlab_rails[‘gitlab_email_reply_to’]= ‘noreply@domain.com’
5.服务器修改过ssh端口的坑(需要修改配置ssh端口)
#修改过ssh端口,gitlab中项目的的ssh地址,会在前面加上协议头和端口号“ssh://git@gitlab.domain.com:55725/huangdc/test.git”
gitlab_rails[‘gitlab_shell_ssh_port’] = 55725
6.启动GitLab 502问题
启动后遇到访问 GitLab 502 的问题,一般就两种情况,要么是内存不够用,要么是unicorn[‘port’] 的端口问题。特别需要注意的是,unicorn[‘port’] 的端口不能和 external_url 上的端口重复。因为配置在external_url上的端口,是有gitlab内置nginx自动映射的,他会占一个端口。unicorn是一个单独的服务,他也会占一个端口。
再具体的解决思路可参考:https://blog.csdn.net/wangxicoding/article/details/43738137
7.常用目录
日志地址:/var/log/gitlab/ # 对应各服务的打印日志
服务地址:/var/opt/gitlab/ # 对应各服务的主目录
8.GitLab常用命令
gitlab-ctl start # 启动所有 gitlab 组件;
gitlab-ctl stop # 停止所有 gitlab 组件;
gitlab-ctl restart # 重启所有 gitlab 组件;
gitlab-ctl status # 查看服务状态;
vim /etc/gitlab/gitlab.rb # 修改gitlab配置文件;
gitlab-ctl reconfigure # 重新编译gitlab的配置;
gitlab-rake gitlab:check SANITIZE=true —trace # 检查gitlab;
gitlab-ctl tail # 查看日志;
gitlab-ctl tail nginx/gitlab_access.log

Mac下修改git用户名,邮箱

首先进入vi ~/.gitconfig进入对应txt 文件,在里面 修改即可

GIT服务与gitlab搭建
git服务搭建

  1. 安装依赖的包

yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

  1. 下载git源码并解压

$ wget https://github.com/git/git/archive/v2.3.0.zip
$ unzip v2.3.0.zip
$ cd git-2.3.0
备用下载:链接: https://pan.baidu.com/s/1czwEz8 密码: y3hn
编译源码并安装服务
make prefix=/usr/local/git all
make prefix=/usr/local/git install
添加环境变量
#添加环境变更
vim /etc/profile
export PATH=/root/svr/git/bin:$PATH
#立即生效
source /etc/profile
#如果成功显示版本号表示添加成功
git —version
git version 2.3.0
gitlab 管理工具安装
gitlab 镜像源
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/
链接: https://pan.baidu.com/s/1o7XTTb0 密码: 5cya
硬件要求:内存2G 空闲
安装依懒服务
sudo yum install -y curl openssh-server openssh-clients cronie
sudo lokkit -s http -s ssh
安装邮件服务
sudo yum install postfix sudo service postfix start sudo chkconfigpostfix on
安装gitlab 组件
sudo rpm -ivh gitlab-ce-9.5.4-ce.0.el6.x86_64.rpm
配置gitlab
vim /etc/gitlab/gitlab.rb
#改成本机地址
external_url=’http://192.168.0.101
#默认8080 易引起冲突,建议修改为其它端口
unicorn[‘port’] = 8080
启动gitlab
sudo gitlab-ctl reconfigure
打开管理界面
#默认为80端口,确保没有端口冲突
http://192.168.0.101/
gitlab 基本操作命令
sudo gitlab-ctl start # 启动所有 gitlab 组件;
sudo gitlab-ctl stop # 停止所有 gitlab 组件;
sudo gitlab-ctl restart # 重启所有 gitlab 组件;
sudo gitlab-ctl status # 查看服务状态;
sudo gitlab-ctl reconfigure # 启动服务;
sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
客户端基本操作
客户端安装 win 64
下载地址:https://git-scm.com/download/win
网盘:链接: https://pan.baidu.com/s/1nvGBuyd 密码: bfyz
基本命令请参见:
https://www.processon.com/view/link/59be84b3e4b00e5d38db21c9 密码: l7oX