描述一下场景:一个完整的项目被拆分成了多个模块,但是这几个模块分别有自己的git,这时对git的pull(更新)、push(提交)、checkout(切换分支)等操作就会出现各种冗余繁杂的操作。现假设有A、B、C模块都有自己的git,示例如下

解决问题:
首先确保你的idea对git识别成功:idea设置然后点击version control(如图,不用展开),所有的git应该都会展示出来,没有的话点击“+”手动添加即可

如何一次性更新?
更新其实是最简单的,但如果不知道的话也是最难找的(根本想不到。。。各种找,找了几个小时。。。),菜单栏>VCS>Update Project即可全部更新😂😂😂😂😂😂(mac截不了菜单栏就不发图了)
如何一次性提交?
这个和单个 git提交一差不多:当然先pull了>下边栏Version Control>右键commit>写好说明,关键一步不要点击右下角的commit,点击旁边的箭头选择commit and push(也可以使用提示的快捷键,省得以后不小心点成commit了),然后再确定即可,如图


如何一次性切换分支?
如果你的git的分支名都是一样就简单多了,比如ABC都是master和develop分支。
1.右下角的Git分支栏点开
2.旁边有个设置点开并勾选“Execute branch operations on all roots”
3.关闭Git分支栏,再打开(这是bug。。。)
3.这时你的Git分支栏的内容就会变成了“Common Local Branches”和“Common Remote Branches”,第一个就是你本地所有git共有的分支,第二个就是你远端所有共有的分支(分支名不同就不会显示了),切换的时候选这两个就行了(不要选Repositories),和单个切换基本一样很方便。

1.idea打开A或B的任意一个文件(这也是bug。。。目的是为了让idea的焦点不在C上)
2.依然是设置>version control(不用展开),选中C点击“-”号将C去掉,然后确定


转载请注明出处,王能的掘金:juejin.cn/post/684490…