使用码云(十七)

使用 GitHub 时,国内的用户经常遇到的问题是访问速度太慢,有时候还会出现无法连接的情况(原因你懂的)。如果我们希望体验Git飞一般的速度,可以使用国内的Git托管服务——码云gitee.com)。

和GitHub相比,码云也提供免费的Git仓库。此外,还集成了代码质量检测、项目演示等功能。码云官网有详细的对比,对于团队协作开发,码云还提供了项目管理、代码托管、文档管理的服务,5人以下小团队免费。

码云的免费版本也提供私有库功能,只是有5人的成员上限。

使用码云和使用 GitHub 类似,我们在码云上注册账号并登录后,需要先上传自己的SSH公钥。选择右上角用户头像 -> 菜单栏选择“设置”,然后选择“SSH公钥”,填写一个便于识别的标题,然后把用户主目录下的 .ssh/id_rsa.pub 文件的内容粘贴进去,如下:

点击 “ 确定 ” 即可完成并看到刚才添加的 Key ,如下:

如果我们已经有了一个本地的git仓库(例如,一个名为myApp的本地库),如何把它关联到 码云 的远程库上呢?
首先,我们在码云上创建一个新的项目,选择右上角用户头像 的 + -> 菜单“新建项目”,然后点击“新建项目”,如下:

项目名称最好与本地库保持一致;
然后,我们在本地仓库上使用命令 git remote add 把它和码云的远程仓库关联,如下:

之后,就可以正常地用 git pushgit pull 推送了 !

如果在使用命令 git remote add 时报错,如下:    

这说明本地仓库已经关联了一个名叫 origin 的远程仓库,此时,可以先用 git remote -v 查看远程仓库信息,如下:

可以看到,本地仓库已经关联了 origin 的远程仓库,并且,该远程仓库指向 GitHub
我们可以删除已有的 GitHub 远程仓库,如下:

再关联码云的远程仓库(注意路径中需要填写正确的用户名),如下:

此时,我们再查看远程仓库信息,如下:

现在可以看到,origin 已经被关联到码云的远程仓库了。通过 git push 命令就可以把本地仓库推送到 gitee上。
有的小伙伴又要问了,一个本地仓库能不能既关联GitHub,又关联码云呢?
答案是肯定的,因为 git 本身是分布式版本控制系统,可以同步到另外一个远程仓库,当然也可以同步到另外两个远程仓库。


使用多个远程仓库时,我们要注意,git 给远程仓库起的默认名称是 origin ,如果有多个远程仓库,我们需要用不同的名称来标识不同的远程仓库。 

仍然以 myApp 本地库为例,我们先删除已关联的名为 origin 的远程仓库,如下:

然后,先关联 GitHub 的远程仓库,如下:

注意,远程仓库的名称叫 github,不叫 origin 了。
接着,再关联码云的远程仓库,如下:

同样注意,远程仓库的名称叫 gitee ,不叫 origin
现在,我们用 git remote -v 查看远程仓库信息,可以看到两个远程仓库,如下:

如果要推送到 GitHub ,使用命令 git push github master ,如下:

如果要推送到 码云  ,使用命令 git push gitee master ,如下:

推送失败了,根据图上指示输入命令 git pull  ;接下来,再输入命令 git pull <remote> <branch>,如下:

因为 码云 新建项目后会自动创建一个readme文件,这样造成远程仓库和本地仓库的文件不匹配,需要先 git pull 下抓取最新的 gitee 库里的文件,然后才能 git push 本地仓库到远程 ;

这样一来,我们的本地仓库就可以同时与多个远程仓库互相同步,如下:

码云也同样提供了 Pull request 功能,可以让其他小伙伴参与到开源项目中来。你可以通过 Fork 廖老师的仓库:https://gitee.com/liaoxuefeng/learngit,创建一个 your-gitee-id.txt 的文本文件,写点自己学习Git的心得,然后推送一个pull request给我,这个仓库会在码云和GitHub做双向同步。


转自:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

猜你喜欢

转载自blog.csdn.net/qq_40415721/article/details/83508824