github学习笔记(四):远程仓库
要到很关键的一步,远程仓库啦。这也是大家能够共享学习的关键步骤!
分布式版本控制
在程序设计中,分布式版本控制(英语:distributed revision control 或 distributed version control,又译为分布式版本控制),又称去中心化版本控制(decentralized version control),是一种版本控制的方式,它允许软件开发者可以共同参与一个软件开发项目,但是不必在相同的网络系统下工作。
其作法是在每个开发者电脑中复制一份完整的代码库以及完整历史。因此在无法连接网络时,仍可以进行软件的分支及合并,可以加速大部分的作业,增加此情形可以进行的工作,而且系统的代码库可以在多家电脑上备份,不需靠单一位置的备份。而多个位置的代码库再通过其他机制来达到同步。
简言之,有一个中心储存,大家从这里克隆都可以同步,改的时候向那边发送申请完成自己的小任务即可。
Github就是提供git仓库托管服务的,只要注册一个 GitHub 账号,就可以免费获得 Git 远程仓库。
与远程仓库的连接
需要SSH协议添加个人秘钥,确认你是你,才具有修改权。具体操作在廖老师的网站讲解非常详细!
记一点小笔记:
- 本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:
第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建 SSH Key:
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
$ ssh-keygen -t rsa -C "youremail@example.com"
- GitHub允许添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
- 在GitHub上免费托管的Git仓库,任何人都可以看到(只有你自己才能改)
- 如果你不想让别人看到Git库,有两个办法,一个是交点保护费,让GitHub把公开的仓库变成私有的,这样别人就看不见了(不可读更不可写)。
另一个办法是自己动手,搭一个Git服务器,因为是你自己的Git服务器,所以别人也是看不见的。
参考链接
参考链接很重要,大部分全靠它们了。本文只是记录一些自己学习过程中学到的一些东西和一些体会!
- 廖雪峰老师的网站 https://www.liaoxuefeng.com/wiki/896043488029600
- 怎么从零开始使用github? - 宁萌时光的回答 - 知乎 https://www.zhihu.com/question/419802287/answer/1472579577
- git 安装网址:https://git-scm.com/download/win
- 维基百科 分布式版本控制:https://www.so.studiodahu.com/baike-分散式版本控制