项目由多个人员(公司)开发,但是不想让他们互相看到彼此的代码,除了手动合并代码该怎么办?

发布于2023-08-07 17:42 阅读 122

公司的系统由多个公司共同开发,但是领导考虑到git做分支会导致代码泄露,想寻求一个方法可以让各公司可以自己提交发布自己开发的部分。目前的方法是各个公司将代码写完后,由我统一手动合并发布,这样参与的公司越来越多,会导致忙不过来或者无法及时发布的问题。目前是一个公司开发一个模块就是一个仓库,每次其他公司需要合并,我再去拉取他们最新的代码,然后把改动的目录给手动覆盖到主项目的文件夹中。


后端可以用微服务的方式,每个服务都是单独的Git仓库来迭代和部署。如果需要跨服务的数据就调对应服务的API就好了。

前端的话,我记得早几年火过一段时间的微前端的概念,也是类似后端的微服务概念,不同的功能模块单独维护和部署。主要就是看你如何把不同的模块聚合或者引入到项目当中了。

如果是一个功能模块会不同公司穿插开发的话,我就没有什么好的办法了,总不可能不给对方测试吧……还是说只提供给分支权限,然后以提交之后自动合并然后部署的方式?但是这样还是得手动解决冲突哇。


或者使用git submodule
将单独的模块独立出来. 用submodule 的形式发布到一个新仓库. 成员自行在新仓库中提交代码. 你只需要维护公共的就可以了.
如何进行发布呢.
利用git hook的特性. 自己在子仓库监听到对应的事件. 如果事件有更新. 则自动拉取代码就可以了.

评论

全部评论

{{item.username}}
{{item.comment_content}}
回复

{{reply.username}} 回复:{{reply.replyname}}

{{reply.content}}

{{reply.isshow ? '取消回复' : '回复'}}

作者

程序员李蛋

一个早早地学会让自己的灵魂充分扩展的人,以后才能将整个世界收入自己的灵魂当中。