架设Git服务器,和使用SSH连接Git服务
架设Git服务器
1:创建一个名为 ‘git’ 的用户,并为其创建一个 .ssh 目录。
$ sudo adduser git
$ su git
$ cd
$ mkdir .ssh
2:把开发者的 SSH 公钥添加到这个用户的 authorized_keys 文件中:
开发者使用:
$ ssh-keygen
$ cat /tmp/id_rsa.john.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCB007n/ww+ouN4gSLKssMxXnBOvf9LGt4L
ojG6rs6hPB09j9R/T17/x4lhJA0F3FR1rP6kYBRsWj2aThGw6HXLm9/5zytK6Ztg3RPKK+4k
Yjh6541NYsnEAZuXz0jTTyAUfrtU3Z5E003C4oxOj6H0rfIF1kKI9MAQLMdpGW1GYEIgS9Ez
Sdfd8AcCIicTDWbqLAcU4UpkaX8KyGlLwsNuuGztobF8m72ALC/nLF6JLtPofwFBlgc+myiv
O7TCUSBdLQlgMVOFq1I2uPWQOkOWQAHukEOmfjy2jctxSDBQ220ymjaNsHT4kgtZg2AYYgPq
dAv8JggJICUvax2T9va5 gsg-keypair
把它们逐个追加到 authorized_keys 文件尾部:
$ cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys
3:用 --bare 选项运行 git init 来初始化一个不包含工作目录的仓库。
$ cd /opt/git
$ mkdir project.git
$ cd project.git
$ git --bare init
4:客户端
如果已经有origin使用:
$ git remote rm origin
然后:
$ cd myproject
$ git init
$ git add .
$ git commit -m 'initial commit'
$ git remote add origin git@gitserver:/opt/git/project.git
$ git push origin master
5:其它客户端
$ git clone git@gitserver:/opt/git/project.git
$ vim README
$ git commit -am 'fix for the README file'
$ git push origin master