乐趣区

关于git:GitHub和码云gitee及远程仓库管理

备注:

本文参考于廖雪峰老师的博客 Git 教程。按照其博客进行学习和记录,感激其自私分享,也欢送各位查看原文。

知识点

  • git remote add <name> 近程库地址,增加指定的近程库名
  • git remote rm <name>删除一个近程库
  • git remote -v查看近程库信息

GitHub

  • GitHub 作为一个收费的近程仓库,能够很不便的公布本人的开源我的项目,同时参加他人的开源我的项目
  • 应用 GitHU 币的克隆和分支性能。在他人的开源我的项目中,点击“Fork”,就能够克隆一个开源我的项目的仓库到本人的仓库,而后应用 clone 克隆到本地,批改我的项目。而后推送到本人账户下的我的项目中。其余账户下是没有权限推送的。
  • 本人批改或减少新性能后。能够在 GitHub 上发动一个pull request, 申请到开源我的项目库。如果对方承受pull request,就真正的奉献到开源我的项目中。

码云(gitee.com)

码云是国内的 Git 托管服务网站

码云不仅提供收费的 Git 仓库,还集成了代码品质检测、我的项目演示等性能。对于团队合作开发,码云还提供了项目管理、代码托管、文档治理的服务,5 人以下小团队收费

gitee 的应用

码云的应用办法和 GitHub 相似,注册账号并登陆后,须要上传本人的 SSH 公钥

  • 设置 >SSH 公钥,输出本地的公钥和title

  • 点击确定,增加 key。
  • 将本地仓库关联到码云的近程仓库
  1. 首先,在码云创立一个新的我的项目,我的项目名最初与本地现有我的项目一样

  1. 在本地仓库上应用git remote add,和码云近程仓库关联

$ git remote add origin git@gitee.com:findmoon/gitTest.git
fatal: 近程 origin 曾经存在。

如上,提醒 origin 近程库曾经存在,本地库曾经关联了一个名叫 origin 的近程库,即之前关联的 github 中的仓库

  • 查看近程库信息,git remote -v,本地库关联了 GitHub 的近程库
$ git remote -v
origin    git@github.com:findmoon/newrepo.git (fetch)
origin    git@github.com:findmoon/newrepo.git (push)
  • 删除已有的近程库的连贯
$ git remote rm origin
  • 此时从新关联 gitee 码云的近程库
$ git remote add origin git@gitee.com:findmoon/gitTest.git
  • 查看近程库信息
$ git remote -v
origin    git@gitee.com:findmoon/gitTest.git (fetch)
origin    git@gitee.com:findmoon/gitTest.git (push)

此时 origin 曾经关联到 gitee 码云的近程库。通过 git push 进行推送。

本地版本库关联多个近程库

Git 作为分布式版本控制系统,能够同步到多个近程库。

git 给近程库的默认名是origin,应用多个近程库时,须要指定不同的名称。

如下,先删除 gitTest 库的 origin 近程库,而后增加 githubgitee两个近程库

$ git remote rm origin
$ git remote
$ git remote -v
$ git remote add github git@github.com:findmoon/newrepo.git
$ git remote add gitee git@gitee.com:findmoon/gitTest.git
$ git remote
gitee
github
  • 新建了两个近程库,别离指向 GitHub 和 gitee
$ git remote -v
gitee    git@gitee.com:findmoon/gitTest.git (fetch)
gitee    git@gitee.com:findmoon/gitTest.git (push)
github    git@github.com:findmoon/newrepo.git (fetch)
github    git@github.com:findmoon/newrepo.git (push)
  • 推送到 GitHub
$ git push github master
Everything up-to-date
  • 推送到 gitee
$ git push gitee master
Everything up-to-date
退出移动版