上一篇我们创建了一个Git仓库,并在这个仓库里提交了一个文件。我们先对这个文件的内容做些修改,加上一些话什么的随意。然后,双击打开你的Git Bash,进入仓库目录,添加,提交。
$ cd f:/test
$ git add .
$ git commit -m "修改了内容"
相信都还有印象对吧。那么,接下来就把这个文件上传到GitHub上去。
因为本地的Git仓库和GitHub的远程仓库之间的传输是通过SSH加密的,所以我们需要一个SSH Key。先去你的用户主目录下看看有没有一个.ssh文件目录,如果没有的话,我们就需要先创建一个。再打开一个Git Bash,或者就刚才你开那个,先转移到主目录去:
$ cd ~
创建SSH Key:
$ ssh-keygen -t rsa -C "你的email地址"
然后一路回车,密码留空就行了。当然如果你说你很在意安全问题的话,随意。一切顺利的话在你的主目录里应该就有一个.ssh目录了,里面有两个文件:id_rsa和id_rsa.pub。其中id_rsa是私钥,保管好了,另一个id_rsa.pub是公钥,也就是我们接下来要用到的。登录你的GitHub账户,点击右上角的齿轮图标进入设置界面,左侧菜单里选择“SSH Keys”,之后右边点击“Add SSH Key”。“Title”随意填,然后打开你那个id_rsa.pub文件,把里面的内容复制到“Key”里面,最后点击“Add Key”搞定。有图有真相:
你也可以添加多个,比如家里一个公司一个。一切顺利接下来我们添加一个远程仓库。点击右上角的“New repository”,进入添加新仓库的界面,“Repository name”里填入你的项目名称,比如这里先填test。其他默认,然后点击“Create repository”完成创建。这样创建出来的Git仓库是对所有人可见的哦。有需要的土豪们也可以选择把该仓库设置为私有,嗯,每个月7美刀。
创建完成之后应该会有一个引导页面,告诉你接下来该怎么做。我们要把我们那个test.txt上传到这个仓库。那么打开你的Git Bash,确定你在仓库文件夹下了,之后先关联你的远程仓库:
$ git remote add origin https://github.com/beehoo/test.git
注意把地址换成你自己的。接着把本地仓库的内容推送到你刚建立的远程仓库里:
$ git push -u origin master
“origin”是Git默认远程主机名,master是分支。关于分支,Git会自动创建一个名为“master”的主分支,你的操作默认也都是在master分支上进行的。当然你也可以自己创建分支,这里暂时先不说。第一次推送加上“-u”的参数,会把本地master分支和远程master分支关联起来。今后你要把本地的更新再推送到远程,可以直接:
$ git push origin master
推送时提示输入你的GitHub用户名和密码,输入之后回车。返回信息后表示成功了。
那如果我在家里推送了更新,第二天到了公司我要如何取得这些更新呢?如果你公司的电脑里还没有项目目录,可以先从你的GitHub上clone一份。
$ git clone https://github.com/beehoo/test.git
这样就从远程仓库里克隆了一份一样的版本库到你的机子上了。既然已经有了,那以后要如何取得更新呢?两种方法,第一种:
$ git fetch origin master
第二种:
$ git pull origin master
两者的区别在于后者会自动合并而前者不会。如果你嫌麻烦就用后者吧。