目录:
1、Centos7安装部署gitlab服务器
1.1、安装和配置必须的依赖
1.2、添加gitlab安装包,并安装到服务器上
1.3、修改gitlab配置文借鉴指定服务器的ip和自定义端口
1.4、对GitLab进行重配置(这一步也是启动GitLab)
1.5、查看启动状态
2、GitLab使用
2.1、访问GitLab界面
2.2、创建新的工程
2.3、gitlab仓库的webhooks设置
3、安装git客户端
3.1、下载
3.2、安装客户端
3.3、绑定用户
4、为GitLab账户设置SSH key
4.1、生成SSH key
4.2、为gitlab账号设置ssh key
5、上传本地文件到gitlab
5.1、创建本地仓库
5.2、关联gitlab仓库
5.3、上传本地代码
5.4、git客户端常用命令
6、GitLab常见问题处理
6.1、登录时502报错:
6.2、注册时,注册邮箱收不到gitlab发送的确认邮件,导致无法登陆问题
7、gitlab-ce_8取消邮箱验证
sudo yum install curl policycoreutils openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd
sudo systemctl enable postfix
sudo systemctl start postfix
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
管道命令的添加方式下载速度慢,建议在外部下载,导入系统中安装,下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
安装下载好的安装包:rpm -i gitlab-ce-8.0.0-ce.0.el7.x86_64.rpm
vim /etc/gitlab/gitlab.rb
退出并保存
ps:注意这里设置的端口不能被占用,默认是8080端口,如果8080端口已经使用,请自定义其它端口,并在防火墙设置开放对应的端口。
gitlab -ctl reconfigure
gitlab -ctl restart(重启命令)
Sudo gitlab-ctl status
如果没有域名,直接输入服务器ip和指定端口进行访问
初始账户:root
密码:5iveL!fe、
第一次登录修改密码
PS:
NameSpace:
这个选择用来决定这个工程所属,可以选择Users,或者Groups,这个会影响到后边工程的Url.例如我选择了组first创建工程test、那么这个工程就会在这个组内可见,那么访问路径是https://domain.com/first/test
权限等级分为三种:
创建成功后选择自己的仓库,可以看到自己的仓库地址,远程仓库创建完成。
在仓库目录下选择Settings→Web Hooks
当指定事件发生时,Web Hooks会自动向你指定的url发送post请求
官方下载地址:http://git-scm.com/download/根据系统下载对应的版本
选择安装路径
选择安装组件,按默认的来
设置开始菜单中快捷方式的目录名称,默认就好,下一步
设置环境变量 : 选择使用什么样的命令行工具, 一般情况下我们默认使用Git Bash即可, 默认选择;
选择换行格式 ,依然是默认就好
选择终端模拟器,依然默认就好
选择默认就好,不用文件系统缓存
点击安装
打开git-bash.exe,在桌面快捷方式/开始菜单/安装目录中
因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识,用户和邮箱为你gitlab注册的账号和邮箱
PS:
git config –global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。
首先检查是否已生成密钥 cd ~/.ssh,ls如果有3个文件,则密钥已经生成,id_rsa.pub就是公钥
如果没有生成,那么通过$ ssh-keygen -t rsa -C “[email protected]”来生成
生成成功后,去对应目录用记事本打开id_rsa.pub,得到ssh key公钥
在用户下Profile Setting→SSHKeys→add SSH keys
如此,gitlab账号的SSH Keys配置完成
选择需要上传的项目或者文件 右键选择Git Bash Here 然后执行命令:git init
初始化成功后你会发现项目里多了一个隐藏文件夹.git
然后执行指令:git add . //当前目录下的文件添加到暂存区
然后,把文件提交到仓库,双引号内是提交描述
执行指令: git commit -m "test" // 提交并添加日志
如此本地仓库建立好了。
到gitlab复制创建的仓库地址
然后执行指令: git remote add origin [email protected]:root/test.git
执行指令:git push -u origin master
敲一个:yes, 然后回车
到此本地文件或项目已经推送到了gitlab仓库了
注意:强制push:$ git push -f origin master
一般是权限问题,解决方法:chmod -R 755 /var/log/gitlab
如果还不行,请检查你的内存,安装使用GitLab需要内存较高.调整内存
1).修改postfix配置文件: vim /etc/postfix/main.cf
myhostname = sample.test.com //设置系统的主机名
mydomain = test.com //设置域名(此处为Email地址@后边部分)
myorigin = $mydomain //将发信地址@后边的部分设置为域名(非系统域名)
inet_interfaces = all //接收来自所有网络的请求
mydestination = $myhostname, localhost.$mydomain, localhost //指定用户邮箱目录
home_mailbox = Maildir //指定用户邮箱目录
注意:安装mailx yum -y install mailx
2).测试邮件是否能够发送成功
echo "hello word" | mail -s "Mail Subject" [email protected]
ps:上面的[email protected]为你希望收到邮件的邮箱地址
3).当邮箱收到系统发来的邮件时,将系统的地址复制下来:如:[email protected]
打开 /etc/gitlab/gitlab.rb将
gitlab_rails['gitlab_email_from'] = ‘[email protected]’
改为:
itlab_rails['gitlab_email_from'] = ‘[email protected]’
4).重新配置gitlab
gitlab-ctl reconfigure
使用版本 gitlab-ce_8.7.5-ce.0_amd64, 操作系统ubuntu 16.04,默认安装。如果是编译安装或者其他方法安装,目录应该不一样。每缩进一次就是上面的子目录,修改前建议先备份
/opt/gitlab/embedded/service/
gitlab-rails/app/models/user.rb # 删掉 devise后面的confirmable
gem/ruby/2.1.0/gems/devise-3.5.4/test/ # 这个两个貌似不用改
failure_app_test.rb # 删掉有You have to confirm your email address before continuing
integration/confirmable_test.rb # 字符串的 test end 块
gitlab-rails/app/views/devise/
confirmations/almost_there.haml # 这个不改也可以的。把最后三行删掉
# 即含有new_user_confirmation_path的块
shared/_signup_box.html.haml # 把最后四行删掉
# 即含有new_confirmation_path的块
参考:https://www.cnblogs.com/clsn/p/7929958.html