git fork 使用
泽州与平遥的公共Bug代码更新方式
为了解决 襄垣 项目 和 运城项目 有相同的功能,如果是2个完全独立的工程,修改公共代码比较麻烦
解决办法:
1.公共代码提取,2个项目都引用公共代码(公共部分太多,提取难度大,强制提取以后,还是会有公共逻辑再里边)
2.使用git 的fork功能:
![](https://images2015.cnblogs.com/blog/901178/201704/901178-20170406220233988-1670568010.png)
上图是fork的流程
fork 遇到的坑:
1.想要fork 项目,fork出来的项目必须放进一个group 里边(公司的gitlib,github不知道)
2.fork的作用的大型团队合作,自己的小团对 fork 上游项目,最后自己的团队完成自己的模块,提交到大团队上边去(根源 还是一个项目,而我的需求其实是2个项目,所以第3条的问题)
3.fork 出来的项目,如果想要把修改的公共代码 直接提交到上游项目,就会把B项目中的全部修改内容提交给上游
解决办法:在上游修改公共代码,下游自负责更新,不负责修复(更新的时候有一个特性,更新内容不会对B项目自己的修改内容覆盖)
4.现在的做法是:在A B 2个项目中都add 一个专门控制公共代码的分支(fork),当需要修改公共代码的时候,去修改fork-A,再 fork-B pull fork-A 的内容,然后再分别后续的操作,如图:
![](https://images2015.cnblogs.com/blog/901178/201704/901178-20170406220252988-1463538754.png)
“你在你的领域中加油,我在我的领域里努力!我们在音乐世界里见!” -- JJ(林俊杰)