最近自己跟同学一起打算做个小项目,决定用git来做版本控制,大家也方便同步代码。把自己团队的项目公开放到github不太合适,私人仓库又要收美刀,想起来自己还有个学生折扣的阿里云就打算自己动手搭建了。
以下记录一下搭建过程。
首先git肯定是装好了的,恩。
添加git用户
添加一个git账户方便管理,当然不添加也没问题。
# adduser git
设置好用户密码
初始化Git仓库
cd
到要建仓库的文件夹然后执行
# git init --bare example.git
example 是要建立的仓库名
禁止git用户登陆Shell
默认添加的用户是可以登陆的,为了安全期间应该设置为不能登陆
可以利用 git-shell
作为git的默认shell来实现
首先查看一下系统的 git-shell
安装路径
$ which git-shell
/usr/bin/git-shell
编辑 /etc/passwd
文件找到类似下面这行
git:x:1001:1000:,,,:/home/git:/usr/bin/bash
把它改为
git:x:1001:1000:,,,:/home/git:/usr/bin/git-shell
这样git用户就无法登陆系统了
克隆仓库
$ git clone git@server:/home/git/example.git
ssh无密码登陆
按照之前的配置应该可以正常clone了,但是每次都要输入git用户的密码很麻烦,可以通过把用户的公匙上传到服务器然后复制内容到.ssh/authorized_keys
这个文件中。使用下面这条命令直接追加进去
$ cat id_rsa.pub >> authorized_keys