当前位置: 首页 > news >正文

在IDEA中使用git分支进行开发然后合并到Master分支,2022.1.x版本

在实际开发过程中,为了避免因为在开发中出现的问题以及方便发布版本,如果是多版本发布的情况相下,我们通常需要采用分支进行开发,这个时候,我们就需要了解git分支的相关知识点了,本篇博客也是博主在实际公司开发中碰到的一个问题了,为了避免影响版本的发布,我们采用分支进行开发,等需要发布版本的时候,在将分支的版本合并到Master上去。

接下来围着我们的git一步一步来,注意博主使用的是IDEA 2022.1版本。不同的版本或有差异,还请见谅。

正式开始吧:

1. 建立分支

1.1根据菜单进行选择

在这里插入图片描述

1.2 选择新建分支

之后我们的Idea会打开一个弹窗如下:

在这里插入图片描述

1.3 输入分支名称

选择new Branch,然后弹窗,输入你新建的分支名字。
在这里插入图片描述

1.4 勾选介绍

以下的checkout branch表示我们新建的分支之后是否默认切换到新建的分支,如果不勾选还是默认你之前使用的分支。
在这里插入图片描述

1.5 查看本地分支

在这里插入图片描述
如上图,目前我们的本地存在两个分支。以上的书签logo代表我们当前使用的是这个分支,可以方便我们查看当前使用的是哪个分支。

2 提交分支到Git远程仓库上去

新建的分支后我们可以Push直接提交到远程仓库上,也可以新建文件提交,为了方便演示,我们新建一个readMe.md文件进行。

2.1切换分支

在这里插入图片描述
选择我们新建的分支,鼠标右键,选择checkout进行分支切换,切换后他的位置就会往上移动。并产生一个书签的logo。

2.2 在新建的分支下创建一个文件

我之前因为已经建立了一个ReadMe.md文件,故而这次我选择新建一个test.md文件。
在这里插入图片描述
文件内容随便你填啥,你想填啥填啥。
在这里插入图片描述
提交到新分支中
在git日志中查看:

在这里插入图片描述
然后我们切换仓库发现,在另一个仓库中并未提交查询到当前文件,代表我们的分支已经创建成功了。

3合并分支

合并分支是我们将一个commit作用到当前分支上来的,比如吧我们的MyTest分支的修改也作用到我们的Master分支上去,这个时候我们需要做的操作。

3.1 切换到Master分支上

之后我们在点击MyTest分支的merge。
在这里插入图片描述

选择合并分支。

3.2合并分支到Master之后直接选择推送

如图,在我们选择merge MyTest into master之后在Master上会有一个推送发图标。这个推送图标对应者的是我的Idea上的右上角图标。
在这里插入图片描述
在这里插入图片描述
此时代表着我们可以推送到远程仓库中去才会生效,选择上图的红框位置,点击一下。会展示如下弹窗,这个我们就比较熟悉了,就是我们经常提交代码的时候出现的页面。
在这里插入图片描述
点击Push,然后就可以推送成功了。推送成功,我们查看主分支,看是否存在推送的文件。我们可以在Idea自带的版本管理工具面板中查看相关历史数据,选择相关熟悉查看具体的提交日志。
在这里插入图片描述

4删除分支

在这里插入图片描述
在这里插入图片描述
选择删除后,我们在下次提交之后就可以发现,我们就不会显示我们已经删除的分支了,而是Master分支了,注意如果你有多个分支,你还是需要切换的回去

注意删除的时候,我们需要将local和remote上的一起删除。之后我们就可以继续开发了。

相关文章:

  • 【IPC通信--socket套接字--心跳包】
  • webpack配置入门
  • vue2 element 弹出框拖拽会出现一层阴影问题
  • MidTool图文创作-GPT-4与DALL·E 3的结合
  • 互联网分布式应用之SpringCloud
  • JavaWeb——新闻管理系统(Jsp+Servlet)之jsp新闻查询
  • Linux离线安装MySQL(rpm)
  • java基于SSM的游戏商城的设计与实现论文
  • 总结ECMAScript和JavaScript的区别
  • sublim安装Autoprefixer插件
  • 滑动窗口协议仿真(2024)
  • GoldenGate工作原理及应用场景
  • 面试算法91:粉刷房子
  • CentOS使用docker安装mysql并使用navicat 远程链接
  • scroll、offset、client —— JS三大家族
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 30天自制操作系统-2
  • k个最大的数及变种小结
  • mysql外键的使用
  • mysql中InnoDB引擎中页的概念
  • storm drpc实例
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • v-if和v-for连用出现的问题
  • 安卓应用性能调试和优化经验分享
  • 大型网站性能监测、分析与优化常见问题QA
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 给github项目添加CI badge
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 如何设计一个比特币钱包服务
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 移动端唤起键盘时取消position:fixed定位
  • 《天龙八部3D》Unity技术方案揭秘
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (vue)页面文件上传获取:action地址
  • (二十三)Flask之高频面试点
  • (理论篇)httpmoudle和httphandler一览
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • .gitignore文件_Git:.gitignore
  • .NET 设计模式—简单工厂(Simple Factory Pattern)
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .net2005怎么读string形的xml,不是xml文件。
  • .NET企业级应用架构设计系列之结尾篇
  • .NET值类型变量“活”在哪?
  • @Query中countQuery的介绍
  • [ 第一章] JavaScript 简史
  • [AIGC] 使用Curl进行网络请求的常见用法
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)
  • [C/C++]_[初级]_[关于编译时出现有符号-无符号不匹配的警告-sizeof使用注意事项]
  • [codevs] 1029 遍历问题
  • [flask]http请求//获取请求体数据
  • [IE技巧] 让IE 以全屏模式启动
  • [Java、Android面试]_05_内存泄漏和内存溢出