当前位置:首页 > 资讯 > 正文

在GitHub上fork项目后,如何与原仓库同步?

在GitHub上fork项目后,如何与原仓库同步?

起因

之前,我写过一篇文章:在GitHub上fork项目后,如何与原仓库同步?图解全过程,介绍如何在自己fork的项目里跟随原仓库进行同步更新。

按照这个方法提交的PR是这样的:

在GitHub上fork项目后,如何与原仓库同步?

可以看到有一些和本次PR无关的提交日志,终于这次被大佬质疑了:

在GitHub上fork项目后,如何与原仓库同步?

面对大佬的质疑,像我这样优(mí)秀(máng)的人,像我这样聪(xún)明(zhǎo)的人,当然是马上这样回复了:

在GitHub上fork项目后,如何与原仓库同步? 我必须推翻之前的我自己写文章,虽然啪啪啪低打了自己的脸,但也要立正站好

终极解决办法

经过我的刻苦学习git知识,我终于找到了终极解决方案,下面以我实际的项目为例,给小伙伴们展示一下。

  1. 先把我自己 fork 的 skywalking 项目克隆到本地:
 

输出如下:

 
  1. 进入克隆的本地目录,把 skywalking 官方地址添加为远程仓库,我们叫它upstream
 

查看是否添加成功:

 

输出如下:

 

说明已经添加成功了。

  1. 从远程仓库upstream获取所有更新。
 

输出如下:

 
  1. 确保分支在主干上:
 
  1. 重写主干的历史纪录:
 

输出如下:

 
  1. 强制推送到 GitHub 上的远程仓库:
 

输出如下:

 

至此,大功告成!

在文章最后求赞,有些人可能会想,求赞狗我才不点,我就要白嫖;而有些人则很 nice,花了几秒钟,点赞收藏评论一气呵成。


最新文章