搭建环境:
2台服务器,主服务器最少2G内存
##安装
git客户端Yum安装一个git
git服务端:
echo "Git02 127.0.0.1" >> /etc/hosts
//加入映射,避免报错
cat> /etc/yum.repos.d/gitlab-ce.repo<< EOF
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
gpgcheck=0
enabled=1
EOF
yum install curl policycoreutils-python openssh-server
yum makecache
yum -y install gitlab-ce
gitlab-ctl reconfigure //重写配置文件
gitlab-ctl status //查看状态
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION //查看版本号
gitlab-ctl start //开启服务
访问http://ip
//默认账号当前登录的账号(超户),密码自己设置最少8位
##访问使用谷歌浏览器可忽略补丁
tar xf gitlab-11-2-stable-zh.tar.gz //中文版补丁,版本必须一致
cat gitlab-11-2-stable-zh/VERSION //查看中文补丁版本
cp -r /opt/gitlab/embedded/service/gitlab-rails{,.bak} //备份英文版,防止因为补丁版本不一样后报错而不能返回英文版
/bin/cp -rf gitlab-11-2-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/ //强制将中文补丁覆盖到英文上
gitlab-ctl reconfigure //重写配置文件
gitlab-ctl restart //重启gitlab
重启后稍等1分钟再在浏览器中输入:http://ip 部分会翻译为中文
在网页上创建一个新项目
##更改访问地址和端口
vim /etc/gitlab/gitlab.rb //set nu使用显示行号再修改
修改13行和943行
gitlab-ctl reconfigure
gitlab-ctl restart
重启后稍等1分钟再访问,因为配置文件中修改了端口,所有网页上访问http://ip:端口
##如果分内外网时
gitlab配置在内网中使用,但同时在外网中访问时
安装nginx进行转发
yum -y install nginx
vi /etc/nginx/nginx.conf
#在location /下加入
proxy_pass http://内网ip:端口;
尝试将本地仓库代码推送到私有gitlab上
在客户端git上操作:
mkdir /mycode
cd /mycode
git init
touch {1…10}
git remote add origin http://ip:8888/root/yunjisuan.git //添加远程Gitlab仓库管理,后面的就是你网页上项目的url复制过来即可
git remove -v //查看
-
上传代码
git add *
git commit -m “test” //上传到本地,-m描述随便写
git push origin master //推送本地仓库master分支到远程gitlab上
-
上传分支
git branch linux //创建分支
git branch //查看当前处在哪个分支
git checkout linux //切换到linux分支
git branch
touch {11…20}
git add *
git commit -m “linux”
git push origin linux //上传linux分支到远程仓库gitlab
-
上传标签(版本)
git tag v1.0 //创建标签
git tag //查看
git add *
git commit -m “v1.0”
git push origin v1.0 //上传标签(版本)到远程仓库Gitlab上
克隆远程仓库的分支linux到本地
mkdir /gitlab
cd /gitlab
git clone -b linux http://192.168.200.131:8888/root/yunjisuan.git
输入的是gitlab上的账号密码
配置gitlab的ssh密钥连接方式
ssh-keygen -t rsa -C ‘1169650149@qq.com’
3个空格
cat /root/.ssh/id_rsa.pub //查看公钥的内容,如何复制到gitlab上的ssh密钥上
**再次克隆时就不需要输入账号密码了
配置gitlab邮件服务
- 开启Gitlab的postfix服务并开启qq邮箱的smtp服务
systemctl start postfix
systemctl enable postfix
systemctl status postfix
保存这个授权码
修改Gitlab配置文件在/etc/gitlab/gitlab.rb
gitlab-ctl reconfigure //重新加载配置文件
gitlab-ctl restart //重启
gitlab-rails console //开启gitlab控制台,需要有耐心的慢慢等待
Notify.test_email(‘qq邮箱’,‘标题’,‘内容’).deliver_now //稍等一会后qq会收到一个邮箱
gitlab的账号注册及分组
注册时邮箱随便写是可以注册成功并登陆的
工作中这个情况是不被允许的,那么我们就要开启gitlab邮箱的验证功能
再次注册时它会向邮箱发送一个验证信息,需要用户登录到邮箱中确认后才能注册成功并登陆
-
分组
创建一个项目
创建完成后
剩下的就是自己随便点着玩