GitLab的安装及使用
Posted 海绵不老
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GitLab的安装及使用相关的知识,希望对你有一定的参考价值。
GitLab的安装及使用
前言
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件
Git与SVN的区别
SVN是集中式版本控制系统,而Git是分布式版本控制系统,Git与SVN的区别可参考Git与SVN的区别
GitHub 和 GitLab 都是基于 web 的 Git 仓库
相同点:都提供了分享开源项目的平台,为开发团队提供了存储、分享、发布和合作开发项目的中心化云存储的场所。
不同点:GitHub 作为开源代码库,拥有超过 900 万的开发者用户,目前仍然是最火的开源项目托管平台,GitHub 同时提供公共仓库和私有仓库,但如果使用私有仓库,是需要付费的。
GitLab 解决了这个问题,你可以在上面创建私人的免费仓库。GitLab 让开发团队对他们的代码仓库拥有更多的控制,相比较 GitHub , 它有不少特色:
允许免费设置仓库权限;
允许用户选择分享一个 project 的部分代码;
允许用户设置 project 的获取权限,进一步提升安全性;
可以设置获取到团队整体的改进进度;
通过 innersourcing 让不在权限范围内的人访问不到该资源;
总结,从代码的私有性上来看,GitLab 是一个更好的选择。但是对于开源项目而言,GitHub 依然是代码托管的首选。
GitLab安装
Gitlab的服务构成
nginx:静态web服务器。
gitlab-shell:用于处理Git命令和修改authorized keys列表。
gitlab-workhorse: 轻量级的反向代理服务器。
logrotate:日志文件管理工具。
postgresql:数据库。
redis:缓存数据库。
sidekiq:用于在后台执行队列任务(异步执行)。
unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。
参照链接:
https://blog.csdn.net/qq_31237581/article/details/102639749?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162069569716780357274153%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=162069569716780357274153&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-1-102639749.first_rank_v2_pc_rank_v29&utm_term=gitlab%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B%E8%AF%A6%E7%BB%86&spm=1018.2226.3001.4187
开始安装:
1、配置yum源
vi /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6
Repo_gpgcheck=0
Enabled=1
Gpgkey=https://packages.gitlab.com/gpg.key
2、更新本地yum缓存
sudo yum makecache
3、安装GitLab社区版-- 自动安装最新版
sudo yum install gitlab-ce
4、安装Git工具linux:安装Git,使用自带的源安装。
yum install git
5、生成密钥文件:使用ssh-keygen生成密钥文件**.ssh/id_rsa.pub**。
GitLab使用
登录GitLab
1、在浏览器的地址栏中输入服务器的公网IP即可登录GitLab的界面
首次登录会强制用户修改密码。密码修改成功后,输入新密码进行登录。
注意:
由于默认gitlab使用80端口,所以,我们需要修改gitlab的默认端口
修改 /etc/gitlab/gitlab.rb 文件如下,然后执行重新配置,重启命令后完成。
gitlab-ctl reconfigure //让配置生效,重新执行此命令时间也比较长
gitlab-ctl restart
端口要用9090以后的最好,否则不生效
默认情况下:unicorn会占用8080端口,nginx会占用80端口。改完之后,就可以通过nginx[‘listen_port’] 在浏览器进行访问了。
内部8080端口也不再被占用了。
添加ssh key导入上面步骤5中生成的密钥文件内容
项目地址,该地址在进行clone操作时需要用到:
2.windows下安装gitbash:
参照:
https://blog.csdn.net/qq_36667170/article/details/79085301?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162116110616780271524699%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=162116110616780271524699&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-79085301.first_rank_v2_pc_rank_v29&utm_term=gitbash&spm=1018.2226.3001.4187
本地安装完gitbash后就可以clone、提交本地的代码到新加的项目下。
3.添加项目成员
参照链接: https://blog.csdn.net/lovedingd/article/details/98469960?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162117214716780264079468%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=162117214716780264079468&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-98469960.first_rank_v2_pc_rank_v29&utm_term=gitlab+%E5%A2%9E%E5%8A%A0%E9%A1%B9%E7%9B%AE%E6%88%90%E5%91%98&spm=1018.2226.3001.4187
SourceTree管理客户端软件
gitbash代码提交试用命令行,相对来说可视化太差, SourceTree是最好用的版本管理客户端软件,使用起来非常方便,所以我们一般安装它来管理本地代码。
安装参考链接:
https://blog.csdn.net/syq8023/article/details/89844030?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162117723716780262596584%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=162117723716780262596584&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-89844030.first_rank_v2_pc_rank_v29&utm_term=sourcetree%E4%BD%BF%E7%94%A8%E8%AF%A6%E8%A7%A3&spm=1018.2226.3001.4187
以上是关于GitLab的安装及使用的主要内容,如果未能解决你的问题,请参考以下文章