这是一个神奇的网站,任何你想要的轮子都可以找到;
这是全球最大同性交友网站,任何口味的程序猿都在上面;
没错,它就是github,一个每天都有成百上千的程序猿默默奋斗的地方.
github上所有公开的项目都是免费的,这极大的降低了开发的难度,同时提高了开发的进度.
不过,在使用过程中,有时候网络并不是那么好,尤其是碰到比较大的项目的时候,每次更新版本都比较耗时.
刚好因为工作要求,需要搭建一个本地的github服务器,所以记录一下整个搭建的流程,以后就可以照本宣科了.
1. 本地服务器可以是自己的电脑,也可以是vps或者云.本文基于vps,系统环境为Centos7,首先安装基础软件ssh
ssh安装命令:
yum install -y openssh-server
ssh自启动命令:
chkconfig sshd on
/etc/ssh/sshd_config为sshd配置文件,可修改Port,ListenAddress,RSAAuthenticaton,AuthorizedKeysFile等,
这里关注最后一个,后文需要用到;
2. yum的仓库中git版本还是1.8.3.1,最新的已经到v2.16.2了,但是不影响使用,
如果需要安装最新版本,可以源码安装,地址
:https://github.com/git/git/archive/v2.16.2.tar.gz,
源码安装步骤可参考百度或
本文使用yum仓库中的版本,git安装命令:
yum install git
安装过程可能需要安装相关的依赖,根据提示安装即可,安装好之后需要运行git config命令配置用户名和邮箱,
本文转载自:https://www.gylmap.com
不了解用法的可以键入: git help config 查看详细用法;
3. 安装好git之后,在搭建本地git服务之前,还有两个基础工作
首先是创建一个git账号,用于git服务,命令如下:
adduser git 或者 sudo adduser git
最后是收集所有需要git服务的用户的ssh公钥,就是ssh-keygen命令生成的id_rsa.pub文件
将所有公钥导入上文提到的AuthorizedKeysFile文件中,本地为
:/home/git/.ssh/authorized_keys,如果没有的话可以自己创建;
4. 初始化git仓库
在/home/git,或该路径任意指定目录,执行以下命令:
git clone –mirror xxx.git
上述命令会创建以.git为后缀的裸版本库,–mirror参数对远程git进行map,在使用git fetch的时候和远程git的更新保持同步,演示如下:
若需要指定某一分支版本,可加-b或者–branche参数,演示如下:
5. 搭建完成,在本地通过git clone命令就可以克隆本地git服务器上的仓库了,演示如下:
补充: 在erlang开发过程中,如果使用rebar管理项目,可在rebar.config文件配置相应地址的deps依赖,演示如下:
上述文件中poolboy配置项指定了2.0版本,和步骤4中-b参数指定的版本相同,rebar3编译时,会自动fetch上述版本并编译,演示如下: