idea解决代码冲突-git分布式合并分支-加git回滚操作

这篇具有很好参考价值的文章主要介绍了idea解决代码冲突-git分布式合并分支-加git回滚操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

第一次接触项目发版的工作,记录一下解决版本冲突合并问题的心得。
适用场景:分布式项目,多人使用自己分支开发,最后合并自己的代码分支给主分支。
话不多说,直接看图


一、分支如何合并?

1.全部拉下来(这个拉取是全部拉取,既保证自己的分支最新,同时也把远端的分支都拉到最新),如果没有图一的拉取图标,这是因为自己没设置显示,可以参考图二的拉取方法。
idea代码冲突合并,intellij-idea,分布式,github
图一
idea代码冲突合并,intellij-idea,分布式,github 图二

2.注意自己是不是dev分支(也就是自己项目的主分支,别的分支要合到的分支),如果不是需要切换为dev分支
(右下角有图标,可以看此时属于哪个分支,下图为切换分支方法英文界面的名字应该是checkout)
idea代码冲突合并,intellij-idea,分布式,github

3.合并冲突(某个模块开发完,该模块的开发者将自己的开发分支推送给主分支,此时合并时需要注意代码冲突)
idea代码冲突合并,intellij-idea,分布式,github
idea代码冲突合并,intellij-idea,分布式,github

之后界面会显示冲突文件,可以点开看哪里冲突,解决冲突第一步,点击左上角的All,合并没有冲突的地方,之后开代码确定dev分支和新提交的谁的代码对(一般都是新提交的对,不过有时候拿不准可以问提交代码的人),解决完冲突后记得推送,推送给dev就可以了

二、为什么出现冲突?

一般来说,每个开发者推送代码前都必须拉取最新的代码,自己在本地解决冲突后再进行推送(注:拉取前必须先提交,也就是commit,不然可能造成自己的代码被别人的代码冲掉),相当于大家在一个分支开发,按照这个流程不会出现什么冲突。
但是分布式开发并且项目已经上生产时将改变此流程,每个开发者从生产环境master拉取创建一个最新代码分支例如master_zhangsan_2021_11_01分支,之后在这个分支上进行开发,当开发完后需要将其合并到sit测试环境,此时相当于master_zhangsan_2021_11_01分支的拉取是基于master分支上的,而合并操作则是在sit分支,而sit测试分支必定比master分支的代码内容多(只有版本迭代,也就是把sit分支合并到master时,二者才会相同),这就导致代码可能会有冲突,因为自己写的地方,别人也可能在别人自己的分支的这个位置写代码了,这将出现冲突问题,尤其是复用高多人开发多的模块。


三、如何避免?

1.项目管理者让单人负责单模块,尽量不要让多人同时间段对一个模块一个页面操作。
2.如果要开发的内容很多时间很紧,尽量让生产发版频繁一些,让测试分支与生产分支的代码不要差太多,避免解决冲突。
3.如果自己的项目并不是在生产环境下开发新功能和修改bug,推荐使用开发分支dev作为拉取和推送(而不是从master拉取,合并到sit),最后再把dev分支整体合并到sit测试环境。

四、为什么要从生产环境master拉取创建一个最新代码分支,当开发完后再将其合并到sit测试环境?

开发者从项目从生产环境master分支拉取开发,可以保证开发者的代码上生产环境后必定生效,毕竟就是在生产环境的代码下开发的。这种流程场景一般是项目开发完一部分,这部分已经上生产了,接下来开发其他部分要上生产,或者修改生产上的问题。该方法弊端是,从生产上拉取的分支但是不能直接上生产,需要先推送到测试环境的分支,测试通过后再合并到生产。测试环境又与生产环境不同,这就导致测试环境代码冲突毕竟严重。
如果项目不是上述流程场景,而是多人共同开发dev分支,最后整体上测试环境,最后上生产环境,则冲突会小很多。

五、回滚操作

1.提交到本地后,还没有push到远端时的回滚操作,可以点击查看历史,点击undo Commit 这种方式最推荐,不会影响别人代码与自己代码。
2.如果是以前的提交有问题,那么可以选择使用revert commit和revert current Branch here(慎用,会丢失提交记录)。
注意:回滚操作要小心使用,不然会造成丢失他人与自己代码问题。
idea代码冲突合并,intellij-idea,分布式,github
idea代码冲突合并,intellij-idea,分布式,github

总结

以上就是今天要讲的内容,本文仅仅简单介绍了代码冲突原因、解决方法。不同项目代码合并流程不同,只能作为参考,另外作为一名开发人员,必须适当了解一定的git合并分支,撤回提交,回退版本等操作,避免出现自己代码丢失或者导致他人代码丢失的现象出现。

最后:注意休息,保护好身体;不要忘了学习,可以少学,不要停止 人生如逆水行舟不进则退文章来源地址https://www.toymoban.com/news/detail-712633.html

到了这里,关于idea解决代码冲突-git分布式合并分支-加git回滚操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vscode中git拉取、提交代码、解决冲突,以及合并代码的操作

    场景:本地有修改代码,远程仓库没有更新,这时本地想要提交代码。 步骤:本地修改了testA文件内容-本地先暂存提交-拉取-推送; 本地修改了testA文件内容 本地先暂存提交 拉取 推送 远程仓库上就可以看见提交记录了 解决冲突场景:本地有修改代码,远程仓库同时有更新

    2024年02月05日
    浏览(42)
  • git代码管理操作全流程之一: 提交、更新、解决冲突、合并等操作

    Step 1, 检查自己的代码改动。执行 git commit -am\\\"\\\"  提交到本地仓库。注意写好准确的描述信息。 Step 2 ,执行 git pull --rebase ,将当前分支的代码更新到远程仓库的最新版本。如果有冲突解决冲突。解决git冲突请见后续介绍。 Step 3 ,上述步骤执行结束,测试代码。在git bash 命

    2024年02月16日
    浏览(32)
  • 【问题处理】GIT合并解决冲突后,导致其他人代码遗失的排查

    📕作者简介:战斧,从事金融IT行业,有着多年一线开发、架构经验;爱好广泛,乐于分享,致力于创作更多高质量内容 📗本文收录于 GIT 专栏,有需要者,可直接订阅专栏实时获取更新 📘高质量专栏 云原生、RabbitMQ、Spring全家桶 等仍在更新,欢迎指导 📙Zookeeper Redis ka

    2024年02月08日
    浏览(41)
  • 分布式版本控制工具Git官网概述、下载安装和代码托管中心

    首先直接在百度搜索Git,点击官方 可以看到官方给的介绍是: Git是个免费的、开源的 分布式版本控制系统 ,可以快速高效地处理从小型到大型的各种项目。 Git 易于学习,占用面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于

    2024年01月20日
    浏览(44)
  • Linux 分布式版本控制系统git,手把手教向gitee上推代码

    目录 什么是git? 安装git  创建版本库 工作区和版本库、 向版本库中添加文件  版本回退 远程操作 什么是git?  Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 linux是一个开源软件,第一版本,第二版本不同怎么控制?  Git 与常用的版本

    2024年02月10日
    浏览(31)
  • Idea中解决Git冲突问题及merge代码消失问题【git常用tips】

    Git命令全系列 我们可以通过Idea直接从GitLab或GitHub等平台上拉取代码 如果上述的小技巧拉取不下来,尝试勾选下图的选项 2.1 演示冲突(GitLab) ①首先在GitLab中或者任意代码托管平台创建一个自己的仓库 通过上面的命令将仓库克隆下来 ②在自己的项目中,任意创建一个类 ③

    2024年01月25日
    浏览(30)
  • 【Git】在idea中多分支开发如何——合并分支、处理冲突

    博主简介: 22级计算机科学与技术本科生一枚🌸 博主主页:是瑶瑶子啦 每日一言🌼: “人间总有一两风,填我十万八千梦” 我当前开发的分支—— hfy 我想将 subject 分支的最新代码拉取合并到 hfy 分支 点击之后会出现界面,有需要你处理的冲突( 冲突的处理的本质就是:你

    2024年04月17日
    浏览(39)
  • 使用IDEA工具处理git合并后的冲突的细节

    使用 IDEA 处理合并(merge) 使用IDEA处理git合并如果遇到冲突,对冲突文件的不冲突部分需要处理吗?会自动将双方不冲突的部分合并吗? 比如如下,使用 IDEA 合并 branch1 到 branch2 分支,出现了冲突,如下图: 如果处理好冲突,得到如下图: 我的问题是,绿色的部分如果不更新

    2024年02月03日
    浏览(25)
  • git代码合并了后发现有冲突,我们怎么取消合并?

    git代码合并了后发现有冲突,我们有时候不想解决冲突,不想合并了;或者别人把冲突解决完了,自己想拉取一下最新代码,咋办呢? 使用命令行

    2024年02月16日
    浏览(40)
  • git使用常见问题(提交代码,合并冲突)

    git fetch 获取远程分支更新 git branch 查看本地分支 git branch -r 查看远程分支 git branch -a 查看所有分支(本地分支和远程分支) git clone 地址 克隆代码 git checkout 切换分支 git pull 同步到本地(拉) git push 推送至服务器 git checkout -b dev origin/master 基于主分支创建dev分支 git add . 添加

    2024年02月03日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包