fork了別人的項(xiàng)目之后如何保持同步更新

最近在GitHub上fork了別人的一個(gè)項(xiàng)目,是關(guān)于flutter學(xué)習(xí)的一個(gè)項(xiàng)目,Git地址如下:https://github.com/simplezhli/flutter_deer.git,但是如果作者在這個(gè)項(xiàng)目上新增了一下功能,我fork到我自己GitHub上的項(xiàng)目如何保持同步的更新呢?

只需要下面三步:

  • 把fork的項(xiàng)目克隆到本地倉庫中
  • Configuring a remote for a fork
  • Syncing a fork

下面第一次操作:

1. 把fork的項(xiàng)目克隆到本地倉庫中
git clone 我自己fork的大佬的項(xiàng)目的GitHub地址

這樣完成之后,就會(huì)發(fā)現(xiàn)我的本地倉庫中多了一個(gè)flutter的文件夾。說明已經(jīng)成功把倉庫克隆到本地了。

2. Configuring a remote for a fork
  • 給當(dāng)前倉庫( fork )配置一個(gè) remote
  • 主要使用 git remote -v查看遠(yuǎn)程狀態(tài)。
git remote -v
  1. 添加一個(gè)將被同步給 fork 遠(yuǎn)程的上游倉庫
git remote add upstream https://github.com/simplezhli/flutter_deer.git

這里后面的那個(gè)地址就是你fork的項(xiàng)目的源地址。

  1. 再次查看狀態(tài)確認(rèn)是否配置成功。
git remote -v

下面會(huì)多出兩個(gè)upstream,說明第二步已經(jīng)成功了。這就相當(dāng)于有一個(gè)管道在源項(xiàng)目和你fork的項(xiàng)目之間建立了,下面看看如何通信更新。

3. Syncing a fork
  • 從上游倉庫 fetch 分支和提交點(diǎn),傳送到本地,并會(huì)被存儲(chǔ)在一個(gè)本地分支 upstream/master
git fetch upstream
/// 切換到本地主分支
git checkout master
  • 把 upstream/master 分支合并到本地 master 上,這樣就完成了同步,并且不會(huì)丟掉本地修改的內(nèi)容。
git merge upstream/master

由于我是剛剛fork的,肯定是最新的項(xiàng)目了,所以提示Already up to date. 如果源項(xiàng)目有更新而你fork的項(xiàng)目沒更新的話,這里就會(huì)顯示不同了。

4. 這樣,就把源項(xiàng)目同步更新到你的本地倉庫中了。 如果再想更新到遠(yuǎn)程倉庫fork,只需要:
git push origin master

實(shí)操截圖:

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容