博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IntelliJ IDEA 同一项目使用多个git管理多个分支(不同项目 多模块 pull 更新 push 推送 操作)...
阅读量:6259 次
发布时间:2019-06-22

本文共 1350 字,大约阅读时间需要 4 分钟。

描述一下场景:一个完整的项目被拆分成了多个模块,但是这几个模块分别有自己的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了),然后再确定即可,如图

如果不小心Commit没Push也没关系,选中所有项目>右键>Git>Repository>Push>然后就可以看到差异内容>点击Push(不是Force)即可(不知道idea怎么想的,为毛这个pull就不能全选呢,不过Update Project也挺方便的)

如何一次性切换分支?

如果你的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),和单个切换基本一样很方便。

但是如果AB有master和develop而C只有master这时想切换成develop(不需要C了)怎么办?

1.idea打开A或B的任意一个文件(这也是bug。。。目的是为了让idea的焦点不在C上)

2.依然是设置>version control(不用展开),选中C点击“-”号将C去掉,然后确定

3.再打开右下角的Git分支管理就会发现没有C了 ,但AB的develop出现了。(上面的操作就是忽略C所以看不到了,如果焦点在C上,此处的分支管理就会一直打不开,重启也没用,必须再把C加上)

我还想更新或提交C怎么办?你只需要先把AB切换到develop,然后按上述操作把C加上即可(此时C还是master)

转载请注明出处,王能的掘金:

转载于:https://juejin.im/post/5caff21cf265da0387338f6f

你可能感兴趣的文章
Mars说光场(3)— 光场采集
查看>>
Django 文件下载功能
查看>>
走红日本 阿里云如何能够赢得海外荣耀
查看>>
qt 学习之路2
查看>>
线上应用故障排查之二:高内存占用
查看>>
第四次作业
查看>>
异常处理汇总 ~ 修正果带着你的Code飞奔吧!
查看>>
BFS --- 素数环
查看>>
PCIE_DMA:xapp1052学习笔记
查看>>
python ----字符串基础练习题30道
查看>>
uva-10879-因数分解
查看>>
python 调用aiohttp
查看>>
Spring Boot中使用MyBatis注解配置详解
查看>>
linux下文件的一些文件颜色的含义
查看>>
跨域iframe高度自适应(兼容IE/FF/OP/Chrome)
查看>>
如何花更少的时间学习更多的知识
查看>>
学习鸟哥的Linux私房菜笔记(8)——文件查找与文件管理2
查看>>
升级fedora 18到fedora 19
查看>>
【代码小记】无
查看>>
11月20日学习内容整理:jquery插件
查看>>