對 github上的程式碼進行二開後,如何同步 github 上原作者的最新程式碼

雪花飄發表於2020-10-19

我們經常會 fork github 上一些開原始碼來為我所用,提交到我們自己的 gitlab,有時我們會該程式碼進行二開,功能擴充套件或者是修復 bug。但是原作者同時會維護更新原有程式碼,我們獲取原作者提交的新程式碼,我們必須做一些同步程式碼的工作。
場景:

  • 程式碼倉庫 A,開原始碼
  • 程式碼倉庫 B,來自 A,提交到我們自己的 gitlab
  • A 更新,B 需要同步的 A 的程式碼
    B:
    git checkout master
    git remote add upstream A的倉庫地址
    git fetch upstream
    git merge upstream/master
    git push
    這樣即可更新到 A 的新程式碼,並推送到我們自己的倉庫。如果出來 fatal: refusing to merge unrelated histories ,是由於提交歷史不同造成的,fetch 時使用 git fetch upstream --allow-unrelated-histories
    如果二開的程式碼修改和原始碼更新有衝突,需要解決衝突都可以提交。
本作品採用《CC 協議》,轉載必須註明作者和本文連結
雪花飄

相關文章