参考文章: http://www.runoob.com/git/git-server.html
操作系统: CentOS 6.5
客户端操作系统:Mac
1、安装Git
$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
$ yum install git
2、创建一个 git 用户组和用户:
$ groupadd git
$ adduser git -g git
修改 git 用户的shell:
$ vi /etc/passwd
把这一行:
git:x:500:500::/home/git:/bin/bash
改成:
git:x:500:500::/home/git:/usr/bin/git-shell
如果不改 git 用户的shell,在客户端clone时,会报错:
fatal: protocol error: bad line length character: This
3、创建证书登录
创建authorized_keys文件,用于保存用户的公钥:
$ cd /home/git/
$ mkdir .ssh
$ chmod 700 .ssh
$ touch .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ chown -R git:git .ssh
最后一行很重要,因为,我使用root用户登录服务器,创建的文件owner都是root。如果不改成git用户,后面clone时会提示输入password。
收集所有需要登录的用户的公钥,公钥位于id_rsa.pub文件中,把我们的公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
4、初始化Git仓库
选定一个目录作为Git仓库,假定是/data/gitroot/memo.git:
$ cd /data
$ mkdir gitroot
$ chown git:git gitroot/
$ cd gitroot
$ git init --bare memo.git
以上命令创建一个空仓库,服务器上的Git仓库通常都以.git结尾。然后,把仓库所属用户改为git:
$ chown -R git:git memo.git
5、克隆仓库
$ git clone git@101.200.xxx.xxx:/data/gitroot/memo.git
Cloning into 'memo'...
warning: You appear to have cloned an empty repository.
101.200.xxx.xxx 为 Git 所在服务器 ip ,需要将其修改为你自己的 Git 服务 ip。
版权声明:本文为wershest原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。