08 远程仓库——添加远程库

Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上,这也是Git和SVN最大的不同,SVN是集中式版本控制。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。

你肯定会想,至少需要两台机器才能玩远程库不是?但是我只有一台电脑,怎么玩?

其实一台电脑上也是可以克隆多个版本库的,只要不在同一个目录下。不过,现实生活中是不会有人这么傻的在一台电脑上搞几个远程库玩,因为一台电脑上搞几个远程库完全没有意义,而且硬盘挂了会导致所有库都挂掉,所以我也不告诉你在一台电脑上怎么克隆多个仓库。

实际情况往往是这样,找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交。

完全可以自己搭建一台运行Git的服务器,不过现阶段,为了学Git先搭个服务器绝对是小题大作。我们可以用现有的Git服务器,如Github、码云,这里以码云为例。

由于你的本地Git仓库和GitHub、码云之间的传输是通过SSH加密的,所以,第一步你需要创建SSH KEY。先在用户主目录下(系统盘->用户->你自己的用户名文件夹,如C:\Users\wudiyong,如果不知道目录位置,可以打开git bash,输入命令cd ~/.ssh,可以直接进入SSH KEY的路径,如果报找不到路径,则表示没有这个目录),看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsaid_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),输入命令ssh-keygen(或命令ssh-keygen -t rsa -C "youremail@example.com"),不断回车即可:

首先 ssh-keygen 会确认密钥的存储位置(默认是 .ssh/id_rsa),然后它会要求你输入两次密钥口令。如果你不想在使用密钥时输入口令,将其留空即可,如果需要指定自己的电子邮箱,则使用后面带邮箱的命令。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

第2步,登录码云,填写生成的公钥信息

设置->安全设置->SSH 公钥

id_rsa.pub文件的内容copy进去即可。

至此,已经配置好了远程Git服务器了,下面开始添加远程库

第3步,添加远程仓库

有以下两种情形:

1、本地创建了一个工程,需要把工程推送到远程仓库

2、从远程仓库下载已有的工程

这两种情形都可以按照以下步骤关联远程仓库

1)在码云创建仓库,仓库名字和本地工程名相同(名字可以随意),如果远程仓库已存在,则忽略此步

2)通过命令git clone把远程仓库下载到本地,如:

git clone https://gitee.com/wudiyong/TestGit.git

git clone git@gitee.com:wudiyong/TestGit.git

Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议,使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https

3)关联本地和远程仓库

如果是第一种情形,则直接把clone下来的空的仓库中的全部文件拷贝到本地仓库即可;

如果是第二种情形,则clone下来的仓库就是你的本地仓库了。

第4步 拉取远程仓库代码或推送代码至远程仓库

拉取命令:git pull

推送命令:git push origin master

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值