建立 Pull 和 Backport 子樹

建立子樹

新增一個名為 plugin 的新遠端指向外掛的儲存庫:

git remote add plugin https://path.to/remotes/plugin.git

然後建立一個子樹,指定新資料夾字首 plugins/demoplugin 是遠端名稱,master 是指子樹儲存庫中的主分支:

git subtree add --prefix=plugins/demo plugin master

拉子樹更新

拉動外掛中的正常提交:

git subtree pull --prefix=plugins/demo plugin master

Backport 子樹更新

  1. 指定要在反向移植的超級專案中進行的提交:

    git commit -am "new changes to be backported"
    
  2. 檢查新分支以進行合併,設定為跟蹤子樹儲存庫:

    git checkout -b backport plugin/master
    
  3. Cherry-pick backports:

    git cherry-pick -x --strategy=subtree master
    
  4. 將更改推送回外掛源:

    git push plugin backport:master