假设有十个基于 master 的 branch ,如果 master 提交了 bugfix 的 commit ,
如何提交到各个 branch 最为简单?可以不考虑冲突,此类提交也基本不会有冲突。
因为有的项目是已经封板了的,不能更新需求,也有的项目代码是外发合作开发的,
公司规定不允许 merge master
当前是专门拉一个干净的有全部 branch 的仓库,一个一个切换分支 cherry-pick ,但是感觉很笨,
所以请教各位大佬有没有更优解?
先谢谢各位
1 RightHand 335 天前 via Android 限制那么多?那就 ctrl c v |
![]() | 2 Garwih 335 天前 via iPhone 基于公共祖先 commit 创建一个 fix 分支,修复后再合并到各个分支。 |
3 kongkongkong101 335 天前 via iPhone ![]() 写个 sh 脚本,循环里做 switch cherrypick push |
4 codersherlock 335 天前 via iPhone ![]() @kongkongkong101 +1 ,cherrypick -ne 0 然后记下来,最后在手动 rebase |
![]() | 5 povsister 335 天前 via iPhone backport 的通用做法就是 cherrypick ,至于要一个个操作…?你们没有 ci bot 吗? PR 下面留个 command 指定要 backport 的分支/release tag ,剩下 bot 会帮你搞定 |
![]() | 6 COW 335 天前 via Android foreach{ checkout $branch cherry-pick $patch_commit --abort } |
![]() | 8 MiraiWithRin OP @povsister 代码太大了,不适合 CI ,然后也从来没人用过 tag 呢 |
9 ftfunjth 335 天前 via iPhone git rebase onto <remote-target-branch> HEAD~1 && git push HEAD:refs/heads/<target-branch-name> |
![]() | 10 nekochyan 335 天前 Cherry-pick ,idea 上叫优选 |