git的版本库有远端版本库,放在服务器上;还有本地版本库,放在用户自己的电脑上。
创建版本库有两种方式,一种是现在服务器上创建一个版本库,然后克隆到本地电脑上;另外一种是分别在服务器和本地电脑上创建一个版本库,然后将两个版本库关联起来。
两种方式的前提是在服务器上创建版本库,好在我们不用自己动手搭建git服务器,GitHub官网即可提供服务器功能,而且还免费。所以在创建版本库之前,我们要先在GitHub官网上注册账号,然后才能使用其服务器。
注册git账号后,由于你本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以还要设置SSH秘钥。设置如下:
第1步:创建SSH Key,在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
ssh-keygen -t rsa -C "youremail@example.com"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
第2步:登陆GitHub,打开“settings”,“SSH and GPG Keys”页面,然后,点“New SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
然后点击“Add SSH key”即可。准备好之后,就可以开始构建自己的版本库了。
文章开头说到有两种构建方式,下面来一一说下:
1、克隆服务器版本库方式
首先,我们在GitHub上创建一个自己的仓库。在网站的右上角的‘+’号上选择‘New repository’。
填写仓库名,勾选 Initialize this repository with a README ,点创建。
这时就在GitHub上创建了一个远程仓库,创建时会自动添加一个README.md文件。
然后就是将远程仓库克隆到本地,在仓库中有个"Clone or download"按钮,里面有克隆或下载的地址。
在本地目录下使用命令:
git clone git@github.com:lingchengfenzi/test.git
可以看到,本地会生成一个test目录,里面有个.git文件夹,这是git仓库的标志,说明我们把远程仓库克隆下来了,那个README.md文件同样也在。之后就可以在这个git库中进行版本管理了。
注:GitHub给出的地址不止一个,还可以用https://github.com/lingchengfenzi/test.git这样的地址,使用https方式下载。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https。
2、本地创建Git库,然后关联远程仓库方式
首先在本地建个目录,进入该目录,使用git init命令,会在当前目录生成.git文件夹,说明本地git库创建成功。
然后到GitHub上创建一个仓库,此时可以不勾选“README”选项。
现在本地仓库有了,远程仓库也创建了,剩下的就是将两者关联起来,这里同样也有HTTPS和SSH两种关联方式。在GitHub上,其会提示你如何进行关联,如图所示,只要按其提示进行一次提交即可。