搭建自己的Git仓库服务器

试用场景:小团队或者个人,私密的内容,不适合放到 github 上面;

此处默认为 centos 操作系统!

第一步:安装 git$ sudo yum install git

第二步,创建一个 git 用户,用来运行 git 服务:

$ sudo adduser git

第三步,创建证书登录: 收集所有需要登录的用户的公钥,就是他们自己的 id_rsa.pub文件,把所有公钥导入到 / home/git/.ssh/authorized_keys 文件里,一行一个。 对于需要登录的用户采用 ssh-keygen -t rsa -C “youremail@example.com” 命令创建(windows 需要打开 git bash), 创建的时候会提示你密钥生成的位置,以及让你生成对应的密码——一般来说,公钥会生成在. ssh 路径下;

第四步,初始化仓库: 先选定一个目录作为 Git 仓库,假定是 / srv/sample.git,在 / srv 目录下输入命令:

$ sudo git init --bare sample.git

执行完上面的命令,Git 就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的 Git 仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的 Git 仓库通常都以. git 结尾。然后,把 owner 改为 git:

$ sudo chown -R git:git sample.git

至此,一个私有的 git 仓库就创建好了,可以采用如下命令拉取内容了:

git clone git@server:/srv/sample.git

但若是我并不是创建新项目,而是想要把老项目放到 git 上面,~~~ 那么首先,你上面初始化仓库应该在你原有项目目录初始化,然后添加项目文件:

$ git add .

随后,将添加的文件提交到仓库 (需要按照要求配置账户,同时也需要把帐号的公钥和上面一样放在 / home/git/.ssh/authorized_keys):

$ git commit -m "Initial commit"

再然后将本地仓库关联到远端仓库:

git remote add origin git@server:/srv/sample.git

然后可以查看一下关联结果:

$ git remote -v

发现成功了,就可以把代码提交到仓库了:

$ git push origin master

至此,所有操作完成!!!