由于历史原因,没有做好分支管理,现在的情况是这样的:
- 多个公司(我司的服务对象是不同的公司)生产中有不同的代码, 而开发分支是同一份(最近才用同一份代码切不同公司分支, 新的需求在不同的分支上开发)
- 生产环境的更新都是增量发布的
- 所以分支的代码跟生产的代码可能差的很多。即可能 a 公司修改了 M1 方法,上线了。但是 b 公司没有更新该方法,b 公司下次上线其他需求的时候也要修改 M1 方法,但是由于已经被修改过了,所以与线上的代码差了一个或多个版本,导致了可能期间的版本使用了其他类或配置,由于本次 b 公司的需求只是修改 M1 方法,所以只上线了 M1 方法而没有上其他类或配置,所以就直接报错了。
最近在上线的时候由于代码不一致的问题,导致了上线很困难。
目前我的操作是上线前先把线上的代码 class 拿下来反编译跟要上线的代码比对下, 差距较大的用线上的 class 反编译直接覆盖,但还是免不了有各种问题,少类,少方法等
请教各位 v 友有没有什么好的解决方法?
