git upstream 和 origin 的区别

[Q&A] 什么是 Upstream-Repo?

upstream 的译为“上游”。当你 git clone 一个别人的 Repository 到本地,由于你不是该仓库的成员,因此你是无法向该仓库推送代码的,只能通过 Pull Request (源自) 的方式。 此时,相较于本地仓库,别人的这个 Repository 称为 upstream 。可以将这个别人的仓库称为 Upstream-Repo

[Q&A] 什么是 Origin-Repo?

我们 fork 这个 Repository 到自己 GitHub 账号下,然后通过 git clone 将这个 Fork 出来的仓库clone到本地电脑上 , git 会默认创建一个 origin 的别名指向 Fork 出来的仓库。可以将这个 Fork 出来的仓库称为 Origin-Repo

Upstream-RepoOrigin-Repo,大致关系如图所示(源自),其中 Upstream-Repo 对应图中的 Original,Origin-Repo 对应图中 Fork。在这里插入图片描述

如何跟踪 Upstream-Repo 仓库的变更?

git remote add upstream <upstream-repo-address>     添加别名 upstream 指向 Upstream-Repo
git fetch upstream                                  获取 Upstream-Repo 的变更
git merge upstream/main                             可以通过 merge 或 rebase 方式合并到本地分支中

如何把 项目 同时托管到 github,gitlab,gitee

由于一个本地仓库是可以关联多个远程仓库的,因此,可以设置多个「别名」分别指向不同的远程仓库(比如一个 GitHub、一个 GitLab、一个 Gitee),然后通过别名的方式方便、快速地拉取某个远程仓库的代码或者将代码推送至某个远程仓库。

git remote add github  git@github.com:toFrankie/repo-demo.git    添加 github 别名
git remote add gitlab  git@gitlab.com:toFrankie/repo-demo.git    添加 gitlab 别名
git remote add gitee   git@gitee.com:toFrankie/repo-demo.git     添加 gitee 别名

参考

开发者社区> 越前君> 细读 Git | 让你弄懂 origin、HEAD、FETCH_HEAD 相关内容

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值