创建 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