Ubuntu 16.04搭建原始Git服务器

1、安装SSH

sudo apt-get install openssh-server
sudo service ssh start

2、安装Git

sudo apt-get install git

3、创建用户git  以及设置密码

sudo adduser git
sudo passwd git
  接下来输入密码

4、禁止git用户Shell登录

sudo vim /etc/passwd
git:x:1001:1001:,,,:/home/git:/bin/bash
改成
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

5、创建存放的仓库

sudo mkdir /home/git/repositories #最好使用repositories作为文件夹名称,这样可以简化后面的操作  
sudo chown git:git /home/git/repositories  
sudo chmod 755 /home/git/repositories  

6、创建子项目

cd /home/git/repositories
sudo git init --bare sample.git

7、修改子项目权限

sudo chown -R git:git sample.git

8、测试

(各自电脑)在别的电脑上进行clone然后开始提交推送等操作(!前提是已经安装客户端

git clone git@IP:/home/git/repositories/sample.git
touch README
git add README
git commit -m 'first commit'
git remote add origin git@IP:/home/git/repositories/sample.git
git push -u origin master

9、扩展

     9.1、(各自电脑)配置每个提交者的账号信息  (一般这一步在安装git客户端的时候已经配置过了)

git config --global user.name "你的注册用户名"
git config --global user.emall "你的注册邮箱"

      9.2、(在Git服务器)配置免密码登录git账号

在/home/git/.ssh/authorized_keys添加各自电脑中使用ssh-keygen生成的.ssh/id_rsa.pub文件内容。这样就可以实现免密码登录。

其实不难发现这个操作就是SSH的免密码登录操作,参考:http://www.cnblogs.com/EasonJim/p/7569611.html
  • 要方便管理公钥,用Gitosis

  • 要像SVN那样变态地控制权限,用Gitolite,或者gogs。

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页