在开发一个项目的时候,往往会用到Git,Git是分布式版本控制系统,说到分布式,就不得不提集中式,首先说说集中式和分布式的概念。
先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的成果推送给中央服务器。它最大的缺点是一旦中央服务器崩溃,那么整个项目都会停滞不前。集中式的管理系统架构如下:
分布式版本控制系统严格上来讲没有中央服务器,他只有一台充当“中央服务器”的电脑,但是这个服务器的作用仅仅是为了方便交换,而不是唯一的资源枢纽,每个项目成员都有一个完整的版本库,成员之间可以互相交换修改内容,和集中式相比,分布式版本控制系统的安全性要高很多。分布式版本管理系统架构如下:
Git如何在GitHub上创建远程仓库
具体的步骤如下:
1.安装本地Git
我们首先需要在自己的本地电脑上安装Git,关于Git的安装方法,这里不再赘述,windows环境下只需要下载对应的安装包,按照提示操作即可。注意,安装完成之后,桌面上会出现Git Bash的应用,此时,需要打开应用修改安装的user和email,使用下面的命令:
$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com" |
---|
2.申请GitHub账号
需要登录到https://github.com/申请自己的GitHub账号,具体的操作过程,这里不再赘述。
3.开始在本地环境创建Git仓库
进入想要创建的本地目录,使用git init命令创建本地仓库,如下:
在本地目录创建一个名为yeyz_git_test的本地仓库。
4.创建ssh key
在本地的Git终端输入:
ssh -keygen -t rsa -C “your_email@example.com” |
---|
然后一直回车,使用默认值即可,会在C盘的Users/用户名/.ssh路径中生成两个文件,如下:
打开.pub文件,可以看到里面保存了一个ssh key。
5.官网配置相关的SSH Key
登陆到GitHub官网,登陆自己的GitHub账号,然后在右上角找到settings,点击settings-->SSH and GPG keys-->New SSH key,如下:
会出现一个对话框,在里面填入自定义的title和上面id_rsa.pub里面的SSH Key,点击确定,本地仓库和GitHub远程仓库便创建好了链接。
为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。
当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
最后友情提示,在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改)。所以,不要把敏感信息放进去。
6.创建远程库
我们已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作。
首先,创建一个新的respository,再填入仓库名称yeyz_git_test,点击创建,就创建出来一个空的远程仓库,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。