这篇“如何使用GitLab管理远程仓库”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何使用GitLab管理远程仓库”文章吧。

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。

安装

也可以自己下载好rpm包,直接安装。安装方法如下:

yuminstall-ypostfixyuminstall-ycronieservicepostfixstartchkconfigpostfixonlokkit-shttp-ssshcurl-Ohttps://downloads-packages.s3.amazonaws.com/centos-6.6/gitlab-7.9.4_omnibus.1-1.el6.x86_64.rpmrpm-vihgitlab-7.9.4_omnibus.1-1.el6.x86_64.rpmgitlab-ctlreconfigure

安装完成后,在浏览器输入gitlab的IP地址,即可访问,默认帐号密码为:root/5iveL!fe

gitlab基本配置

#cat/etc/gitlab/gitlab.rbexternal_url'http://git.hongxin.com'#指定gitlab服务器地址nginx['enable']=false#不启用gitlab自带的nginx#nginx['listen_addresses']=['192.168.1.202']#gitlab的nginx监听地址unicorn['port']=8080#修改unicorn的默认端口,即gitlab服务的默认端口。可启用此端口,而关闭gitlab自带的nginx,使用其他nginx来代理该端口gitlab_rails['gitlab_shell_ssh_port']=52113#定义ssh端口配置,该端口需要与/etc/ssh/sshd_config文件中ssh监听的端口保持一致

gitlab的所有工程目录都在/var/opt/gitlab下,数据仓库存放在/var/opt/gitlab/git-data/下

配置完成以后,执行gitlab-ctl reconfigure来载入配置,并启动gitlab

gitlab的邮件配置使用本地的postfix发送邮件

servicepotfixstartvim/etc/gitlab/gitlab.rbgitlab_rails['gitlab_email_from']='gitlab@example.com'#定义发邮件的邮箱名称,默认使用本机的postfix发送邮件使用邮件发送模板gitlab_rails['smtp_enable']=truegitlab_rails['smtp_address']="smtp.exmail.qq.com"gitlab_rails['smtp_port']=465gitlab_rails['smtp_user_name']="完整邮件账户"gitlab_rails['smtp_password']="密码"gitlab_rails['smtp_domain']="邮件账户所在域"gitlab_rails['smtp_authentication']="login"gitlab_rails['smtp_enable_starttls_auto']=truegitlab_rails['smtp_tls']=true#这个很重要,而且是官方文档里没提及的#修改gitlab配置的发信人,否则会抛出"553Mailfrommustequalauthorizeduser"的错误gitlab_rails['gitlab_email_from']='完整邮件账户'user["git_user_email"]="xxxxxxx"使用腾讯企业邮箱配置发送邮件

gitlab_rails['smtp_enable']=truegitlab_rails['smtp_address']="smtp.exmail.qq.com"gitlab_rails['smtp_port']=465gitlab_rails['smtp_user_name']="tech@gongmall.com"gitlab_rails['smtp_password']="tech@gongmall.com的密码"gitlab_rails['smtp_domain']="gongmall.com"gitlab_rails['smtp_authentication']="login"gitlab_rails['smtp_enable_starttls_auto']=truegitlab_rails['smtp_tls']=truegitlab_rails['gitlab_email_from']='tech@gongmall.com'user["git_user_email"]="xxxxxxx"使用163邮箱来发送gitlab的邮件

#cat/etc/gitlab/gitlab.rb#配置smtpgitlab_rails['smtp_enable']=truegitlab_rails['smtp_address']="smtp.163.com"gitlab_rails['smtp_port']=25#配置邮箱帐号密码gitlab_rails['smtp_user_name']="yan_ruo_gu@163.com"gitlab_rails['smtp_password']="xxxxxxx"#配置邮箱域gitlab_rails['smtp_domain']='163.com'gitlab_rails['smtp_authentication']=:login#有的配置成:plaingitlab_rails['smtp_enable_starttls_auto']=true#是否开启tls认证#修改gitlab配置的发信人,否则会抛出"553Mailfrommustequalauthorizeduser"的错误gitlab_rails['gitlab_email_from']="yan_ruo_gu@163.com"user["git_user_email"]="xxxxxxx"启用gitlab的https

#生成密钥对

cd/etc/gitlab/sslopensslgenrsa-des3-outserver.key1024opensslrsa-inserver.key-outserver.key#去除server.key的加密口令opensslreq-new-keyserver.key-outserver.csropensslx509-req-days365-inserver.csr-signkeyserver.key-outserver.crt#vim/etc/gitlab/gitlab.rbnginx['redirect_http_to_https']=truenginx['ssl_certificate']="/etc/gitlab/ssl/server.crt"nginx['ssl_certificate_key']="/etc/gitlab/ssl/server.key"gitlab-ctlreconfigure更改仓库存储路径

gitlab默认的仓库路径是/var/opt/gitlab/git-data/repositories,一般服务器上/var的空间不是很足,所以要把仓库配置到其他路径。

新仓库修改存储路径

如果是刚安装好gitlab,还没开始使用,修改配置即可:

#vim/etc/gitlab/gitlab.rbgit_data_dir"/data/git-data"使用了一段时间的仓库修改存储路径

如果gitlab已经在使用,除了修改配置,还需要如下步骤:

gitlab-ctlstoprsync-av/var/opt/gitlab/git-data/repositories/data/git-data/#vim/etc/gitlab/gitlab.rbgit_data_dir"/data/git-data"gitlab-ctlstartgitlab-ctlreconfiguregitlab数据备份与恢复

备份

gitlab备份的计划任务:

02***/opt/gitlab/bin/gitlab-rakegitlab:backup:create

gitlab修改备份路径:

#vim/etc/gitlab/gitlab.rbgitlab_rails['backup_path']='/mnt/backups'

恢复

停止相关数据连接服务:

gitlab-ctlstopunicorngitlab-ctlstopsidekiq

从指定编号备份中恢复:

gitlab-rakegitlab:backup:restoreBACKUP=139351368

启动gitlab:

gitlab-ctlstart迁移

把备份文件拷贝到gitlab的备份目录下,执行恢复操作即可

gitlab头像无法正常显示

在配置文件/etc/gitlab/gitlab.rb中添加如下项:

gitlab_rails['gravatar_plain_url']='http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon'

然后执行:

gitlab-ctlreconfiguregitlab-rakecache:clearRAILS_ENV=productiongitlab查看日志

gitlab-ctltail

以上就是关于“如何使用GitLab管理远程仓库”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。