#云服务器搭建gitblit
##前言
最近公司新立了一个项目。但是,是一个甲方的项目。甲方要求代码放在他们的服务器上,但是我们用的是git进行管理,而甲方用的是SVN。于是我被分配了搭建git的任务。
首选当然是谷歌旗下的gitlab啦,但是我一看他的文档。推荐内存4g,我就不想用了。
又谷歌了一下,发现了gitblit。这是一个纯java写的框架,可以对git的使用者进行权限管理。
##1.gitblit简介
Gitblit 是一个纯 Java 库用来管理、查看和处理 Git 资料库.相当于 Git 的 Java 管理工具,支持linux系统。
Git是分布式版本控制系统,它强调速度、数据一致性,并且支持分布式、非线性工作流。它最初由Linus Torvalds在2005年为Linux内核设计和开发,使用GPLv2证书,并从此成为软件开发中使用最广泛的版本控制系统。
Gitblit是完全开源的软件,它基于纯粹的Java堆栈,被设计以在Git仓库速度和效率方面胜任从小型到极大型的项目。它很容易学习和上手,并有着闪电般的性能。它在很多方面远胜Subversion、CVS、Perforce和ClearCase等SCM(版本控制)工具,比如,如快速本地分支、易于暂存、多工作流等。
##2.gitblit的安装
[root@mzf opt]# yum -y install java-1.7.0-openjdk* //要提前安装java环境
[root@mzf opt]# mkdir -p /opt/gitblit
[root@mzf opt]# cd /opt/gitblit
[root@mzf gitblit]# wget http://dl.bintray.com/gitblit/releases/gitblit-1.8.0.tar.gz //下载gitblit压缩包
[root@mzf gitblit]# tar -zvxf gitblit-1.8.0.tar.gz //解压,压缩包
[root@mzf gitblit]# ls
gitblit-1.8.0 gitblit-1.8.0.tar.gz
[root@mzf gitblit]# cd gitblit-1.8.0/
[root@mzf gitblit-1.8.0]# ls //查看当前路径下所有的文件(文件夹)
add-indexed-branch.sh data ext gitblit.sh install-service-centos.sh install-service-ubuntu.sh LICENSE NOTICE service-centos.sh
authority.sh docs gitblit.jar gitblit-stop.sh install-service-fedora.sh java-proxy-config.sh migrate-tickets.sh reindex-tickets.sh service-ubuntu.sh
默认配置文件在data/gitblit.properties,可以根据需要自己修改。
这里我使用的是华为云的云服务器,华为云的所有端口好像默认是关闭的。如果需要使用要单独去配置:
控制台->弹性云服务器->更多(对应服务器)->更改安全组…具体看图
###启动gitlit服务:
[root@mzf gitblit-1.8.0]# java -jar gitblit.jar --baseFolder data
2018-10-31 09:42:19 [INFO ]
_____ _ _ _ _ _ _
| __ \(_)| | | | | |(_)| |
| | \/ _ | |_ | |__ | | _ | |_
| | __ | || __|| '_ \ | || || __| http://gitblit.com
| |_\ \| || |_ | |_) || || || |_ @gitblit
\____/|_| \__||_.__/ |_||_| \__| 1.8.0
2018-10-31 09:42:19 [INFO ] Running on Linux (3.10.0-693.11.1.el7.x86_64)
2018-10-31 09:42:19 [INFO ] Logging initialized @352ms
2018-10-31 09:42:19 [INFO ] Using JCE Unlimited Strength Jurisdiction Policy files
2018-10-31 09:42:19 [INFO ] Generating Gitblit Certificate Authority (/opt/gitblit/gitblit-1.8.0/data/certs/caKeyStore.p12)
2018-10-31 09:42:21 [INFO ] Generating Gitblit Certificate Authority CRL (/opt/gitblit/gitblit-1.8.0/data/certs/caRevocationList.crl)
2018-10-31 09:42:21 [