安装ssh
和git
sudo apt-get install ssh sudo apt-get install git
新建一个git
用户,用来运行git
服务
sudo adduser git
客户端(已经安装git
,ssh
)生成ssh
公钥
ssh-keygen -t rsa -C "youremail@example.com"
生成的公钥(id_rsa
)和私钥(id_rsa.pub
)在~/.ssh
文件夹中
创建收集ssh
公钥的文件,并将授权的客户端公钥写入此文件
cd ~/.ssh touch authorized_keys chmod 644 authorized_keys
Linux
系统文件权限设置:数字 4 、2 和 1表示读、写、执行权限
rwx = 4 + 2 + 1 = 7
rw = 4 + 2 = 6
rx = 4 +1 = 5
三个数字分别代表User、Group、及Other的权限。
- -rw------- (600) 只有拥有者有读写权限。
- -rw-r--r-- (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
- -rwx------ (700) 只有拥有者有读、写、执行权限。
- -rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
- -rwx--x--x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
- -rw-rw-rw- (666) 所有用户都有文件读、写权限。
- -rwxrwxrwx (777) 所有用户都有读、写、执行权限。
初始化git
仓库(eg: ~/srv/sample.git
),并修改所有者为创建的git
用户
cd ~/srv/ sudo git init --bare sample.git sudo chown -R git:git sample.git
在客户端克隆远程仓库
在客户端:
git clone git@[ip address]:~/srv/sample.git