文章目录
集中式 VS 分布式
集中式版本控制系统,
版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。
中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。
集中式版本控制系统最大的毛病就是必须联网才能工作
如果在互联网上,遇到网速慢的话,可能提交一个10M的文件就需要5分钟。
分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,无需联网。
多个人协作,只需把各自的修改推送给对方,就可以互相看到对方的修改了。
分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。
实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。
CVS作为最早的开源而且免费的集中式版本控制系统,直到现在还有不少人在用。由于CVS自身设计的问题,会造成提交文件不完整,版本库莫名其妙损坏的情况。同样是开源而且免费的SVN修正了CVS的一些稳定性问题,是目前用得最多的集中式版本库控制系统。
使用GitHub远程仓库
step1 创建ssh key
ssh-keygen -t rsa -C “youremail@example.com”
step2 登陆GitHub,打开“Account settings”,“SSH Keys”
step3 git bash ssh 连接到GitHub,添加远程仓库
登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库。
git bash 终端,输入如下命令检测是否能够ssh连接github,
ssh -T git@github.com
step4 把本地仓库和远程仓库进行关联
git remote add origin