乐趣区

同步Github-fork

前言

选择拥抱开源,无疑参与 github的开源项目是最好的选择, 先从同步 fork 仓库开始做起!

一、确认本地 fork 仓库版本是否落后于原仓库

1. 查看 github fork 仓库后的 commit数量及提交日志

本地 clone 自己仓库 后的 commit log 日志,与 gihub 上一致

2. 查看原仓库的相关信息,比较

比较后得知 :本地 fork 仓库的版本落后于原始仓库

下一步计划,准备开始同步!

二、同步

1. 查看本地仓库设置的远端仓库,是否有连接上游原始远端仓库

如果未连接上游仓库,添加远程仓库的变量地址

$  git remote -v

origin  https://github.com/xiaoyueyue165/taro.git (fetch)
origin  https://github.com/xiaoyueyue165/taro.git (push)
  • 添加上游仓库
$ git remote add upsteream https://github.com/NervJS/taro.git

  • 再次查看远程仓库指向地址列表,确认添加
$  git remote -v
origin  https://github.com/xiaoyueyue165/taro.git (fetch)
origin  https://github.com/xiaoyueyue165/taro.git (push)
upsteream  https://github.com/NervJS/taro.git (fetch)
upsteream  https://github.com/NervJS/taro.git (push)

2. fetch,取回原仓库的更新

$ git fetch upsteream

默认情况下,git fetch 取回所有分支(branch)的更新

3. 将 fetch 后的更新内容合并至主分支

所取回的更新,在本地主机上要用 ” 远程主机名 / 分支名 ” 的形式读取。比如 upsteream 主机的master,就要用 upsteream/master 读取。

$ git merge upsteream/master

此时会发现本地 master 分支的 commit 日志已经与原仓库的日志保持一致

  • 本地 master

  • 原始仓库

4. 更新,推送至远端 master 分支

$ git push origin master

  • 自己 fork 的 仓库变化,commit 数量与 最新日志与原仓库一致

参考

  • Git 远程操作详解,by 阮一峰
  • Syncing Your GitHub Fork , by Data School
退出移动版