本篇介绍的就是Git远程仓库的使用。
这里我们使用GitHub这个神奇的网站来当做Git的远程仓库。GitHub是专门托管Git仓库服务的,而且现在私有的项目也不收费了。
使用前请先通过GitHub注册一个你自己的账号。
配置ssh key
第一步:创建ssh key
打开Git bash,输入下面的命令:
#填写你自己的邮箱地址
ssh-****** -t rsa -C "[email protected]"
然后一直回车,使用默认值即可。
之后在你的用户目录下,可以看到.ssh 目录,id_rsa 是私钥,id_rsa.pub 是公钥
第二步:在GitHub配置ssh key
在GitHub登上你的账号,然后在setting 里面配置刚刚创建出来的公钥key ,即id_rsa.pub公钥文件里面的值,不要把私钥放进去了。
GitHub支持添加多个key,只要把每台电脑上面创建的key配置好就可以了。这样,你就可以在公司的电脑,家里电脑,宾馆的电脑,厕所的电脑。。。来共同管理你的项目了。
添加远程库
接下来就是将本地创建好的 Git 仓库和 GitHub 上面创建的仓库关联起来,实现两个仓库的同步。这样,GitHub的仓库就可以当做一个备份,也可以让别人fork该仓库进行协作。
第一步:关联本地仓库和远程仓库
在 GitHub 创建一个新的仓库,仓库名叫:learngit(这个名字不一定非要和本地仓库的名字一样,但是最好是一样,这样方便记) ,然后直接点击 Create repository 创建
在GitHub创建好仓库之后,我们就来让本地的 learngit 仓库和GitHub learngit 仓库关联上。
在本地仓库打开 Git Bash,输入命令:
git remote add origin [email protected]:le1024/learngit.git
le1024 需要替换成你自己的GitHub用户名。origin 是远程仓库的名字,是Git默认的叫法,也可以改成别的。
我们通过git remote -v 命令就可以看到我们已经成功关联上了 GitHub 上的远程仓库。
第二步:推送本地仓库到远程仓库
推送命令:
git push -u origin master
如果有Enter passphrase for key '/c/Users/Le/.ssh/id_rsa':提示的话,输入你的GitHub密码回车即可。
执行成功之后,我们就可以在GitHub新建的仓库里看到我们推送的内容了。
第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。后面直接使用下面的命令推送就可以了:
git push origin master
从远程库克隆
上一步是已经有本地仓库,再创建的远程仓库,然后关联远程仓库。现在是先创建一个远程仓库,然后克隆到本地。
这里在GitHub就不新创建远程仓库了,就用上一步创建好的仓库,里面有一个我们从本地仓库推送的一个 readme 文件。
我们在本地目录新创建一个文件夹testgit,然后在这里文件夹下打开 Git Bash 。
输入命令克隆远程仓库到这个文件夹:
git clone [email protected]:le1024/learngit.git
成功之后,你就可以在你本地刚刚创建的文件夹下看到从远程仓库克隆的 learngit 仓库
小结
1.生成ssh key
#填写你自己的邮箱
ssh-****** -t rsa -C "[email protected]"
2.关联远程仓库
#关联远程仓库,填写你自己的GitHub用户名和仓库名
git remote add origin git@guihub.com:le1024/learngit.git
#第一次推送到远程仓库的master分支
git push -u origin master
#后期推送到远程仓库的master分支
git push origin master
3.克隆远程仓库
#克隆远程仓库,填写你自己的GitHub用户名和仓库名
git clone git@github.com:le1024/learngit.git