建立git私有库

ubuntu服务器为例,若是要建立小范围的私有git服务器,是很是简单的,只须要以下几个简单步骤: git

Step 1: 安装git shell

直接经过sudo apt-get install git便可完成。 ubuntu

Step 2: 建立git用户 安全

git用户用来经过SSH链接git服务,输入命令: bash

$ sudo adduser git

Step 3: 建立证书登陆 服务器

首先收集全部须要登陆的用户公钥,而后导入到/home/git/.ssh/authorized_keys文件便可。 app

Step 4: 初始化git仓库 ssh

假设仓库位于/srv/sample.git,在/srv目录下输入命令: spa

$ sudo git init --bare sample.git

这样就建立了一个裸仓库,裸仓库没有working dir,由于服务器上的git仓库纯粹是为了共享,仓库目录通常以.git结尾。而后把owner改成git code

$ sudo git init --bare sample.git

Step 5: 防止登陆shell

出于安全考虑,git用户不该该登陆shell,能够编辑/etc/passwd,找到相似一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改成:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样,git用户能够正常经过ssh使用git,但没法登陆shell

Step 6: 克隆仓库

在客户端就能够经过ssh克隆仓库了:

$ git clone git@server:/srv/sample.git
Cloning into 'sample'...
warning: You appear to have cloned an empty repository.

而后,就能够正常推送了:

$ touch README
$ git add README
$ git commit -m "add readme"
$ git push origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 212 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@ubuntu:/srv/sample.git
 * [new branch]      master -> master
相关文章
相关标签/搜索