文章目录
  1. 1. 前言
  2. 2. 一、确认本地 fork 仓库版本是否落后于原仓库
    1. 2.1. 1. 查看 github fork 仓库后的 commit数量及提交日志
    2. 2.2. 2. 查看原仓库的相关信息,比较
  3. 3. 二、 同步
    1. 3.1. 1. 查看本地仓库设置的远端仓库,是否有连接上游原始远端仓库
    2. 3.2. 2. fetch,取回原仓库的更新
    3. 3.3. 3. 将 fetch 后的更新内容合并至主分支
    4. 3.4. 4.更新,推送至远端 master 分支
  4. 4. 参考

前言

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

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

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

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

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

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

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

二、 同步

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

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

1
2
3
4
$  git remote -v

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

  • 再次查看远程仓库指向地址列表,确认添加
1
2
3
4
5
$  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,取回原仓库的更新

1
$ git fetch upsteream

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

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

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

1
$ git merge upsteream/master

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

  • 本地 master

  • 原始仓库

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

1
$ git push origin master

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

参考

文章目录
  1. 1. 前言
  2. 2. 一、确认本地 fork 仓库版本是否落后于原仓库
    1. 2.1. 1. 查看 github fork 仓库后的 commit数量及提交日志
    2. 2.2. 2. 查看原仓库的相关信息,比较
  3. 3. 二、 同步
    1. 3.1. 1. 查看本地仓库设置的远端仓库,是否有连接上游原始远端仓库
    2. 3.2. 2. fetch,取回原仓库的更新
    3. 3.3. 3. 将 fetch 后的更新内容合并至主分支
    4. 3.4. 4.更新,推送至远端 master 分支
  4. 4. 参考