在自己的服务器上安装git服务器

https://blog.csdn.net/sgrrmswtvt/article/details/77866187

我的系统是Centos,所以基本按着这位老哥的步骤来,不过有以下补充

1.配置问题(文件是/etc/ssh/sshd_config)

img

需要将此条语句打开并改为no

img

需要将这条语句打开改为no,意味打开自动认证则不需要密码认证

2.公钥问题我们本地服务器的公钥在/user/84936/.ssh里面(隐藏文件夹),但是如果打开Pub文件将内容复制到新建的authorized_keys中的话会显示

img

正确的做法是将pub文件上传到/home/git/.ssh/文件,然后利用命令cp id_rsa.pub authorized_keys将公钥导入到authorized_kyes中,然后利用命令/bin/systemctl restart sshd_service这样后就可以从本地clone了

img

3.关联本地仓库到远程仓库

git remote add origin git@主机名称:远端仓库

这条语句可以建立起你本地仓库和远端仓库的联系

git remote -v

这条命令查看关联远端仓库的信息

git remote rm origin

这条语句可以删除已关联的信息(关联错时可以删除后再重新添加)

用第一条语句关联后再执行下面命令就可以将本地仓库文件上传到远端仓库了

git push -u origin master

4.裸仓库问题我主要根据上面那位老哥和廖雪峰的这个对照着来弄的

https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 (廖雪峰)

因为两者都建立的是裸仓库,所以我也建立的是裸仓库,但是裸仓库是没有工作区的,只是提供给程序员门一个Pull和push的场所,所以如果需要在服务器端看见自己上传的文件的话就不能建立裸仓库

https://segmentfault.com/q/1010000002549403/a-1020000002550996 (这是裸仓库的一个问题)

也就是说,因为建立了裸仓库,虽然我可以push和pull,但是你在服务器上看不到自己的push上来的问件。

push成功后的结果:

img

本地仓库文件:

img

远程仓库目录:

img

可以看到,虽然本地仓库有文件并且push成功,但是远端仓库是没有自己的文件的,只有git相关的配置文件


欢迎在评论区中进行批评指正,转载请注明来源,如涉及侵权,请联系作者删除。

×

喜欢就点赞,疼爱就打赏