一、问题由来

  当前新项目的开发分支非常的多,自己看了一下大概有20多个分支。每次开发完一个版本就会重新创建几个新的分支,每个开发人员对应一个

自己单独的开发分支,因此才会出现这么多的分支。分支多了之后,容易导致一个问题,在提交代码的时候如果分支选择错误,就会提交到错误的

分支,这种情况是不允许出现的,肯定会被批评。那如果操作失误该如何解决呢?

二、问题分析

  Git操作里面有一个代码回滚的操作,就是将代码回退到某一个版本,然后在进行强制提交。如果是使用命令行操作,自己还比较熟悉,先切换到

对应的分支(git checkout -b release-V4 origin/release-V4),然后回退版本(git reset --hard 版本ID),最后是强制push到远程分支(git push -f)。可是使用

IDEA如何操作,自己还不清楚。

二、解决方案

  自己去网上查看各种教程,很快找到对应的教程,操作起来非常的简单,比使用命令行操作简单许多。操作只需要几步就搞定:

第一步是手动备份自己已经修改的代码,不然代码回滚后,之前的更改都会被覆盖;

第二步使用IDEA回滚代码到指定版本;

选中项目,右键选择Git-->Show History

然后选择:Log-->单击选择需要回退的版本,右键--->Reset Current branch to Here-->

继续选择:Hard 表示强制回退到当前版本,最后选择Reset即可。本地的代码就会回退到之前的版本,会发生改变。

第三步使用IDEA将当前版本强制推送到远程;这样远程的版本就会被本地的当前版本覆盖,完成代码回滚。

选中项目右键:Git-->Repository-->Push

然后选择 Force Push进行强制推送即可。

参考文章: https://blog.csdn.net/HaHa_Sir/article/details/122856923

使用IDEA中的Git提交代码到错误的分支,回滚代码后如何强制push代码-2022新项目的更多相关文章

  1. SSM-MyBatis-09:Mybatis中SqlSession的close为什么能造成事务的回滚

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 经过上几次的查找,笔者我就简单的说一下查找的思路,留给读者自己实践 同样找到sqlsession的实现类,-- ...

  2. 用Eclipse中的git提交代码流程

    有更新有提交 Commit到本地,pull,然后再push 提交 Commit到本地 或者直接commit and Push 更新 先对比然后pull或者右键项目直接pull 有冲突时 有冲突的时候优 ...

  3. 使用gradle构建Android时 版本号versionName中嵌入git提交信息

    为什么要这么做   在应用开发的版本迭代过程中,通过版本号并不能快速定位到所对应的代码,导致在后面分析问题追溯对应版本的代码时比较麻烦.   如果代码是通过git来管理的,git的commit id等 ...

  4. Eclipse中使用GIT提交文件至本地

    GIT提交文件至本地: 1.  右击项目——Team——Commit…: 2.在弹出的Commit Changes框中——选择要提交的文件——填写提交说明——点击Commit,即可提交至本地.

  5. git 远程分支回滚

    git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id [本地代码库回滚]: git reset --hard commit-id :回滚到commit-id,讲commit-id ...

  6. git实战-多分支开发-2022新项目

    现在开发中大多数公司中都在使用Git这个代码版本管理工具,几乎可以说是已经成为标配,刚入职不久的这家新公司也不例外. 去公司没多久,开始搭建项目,然后创建开发分支,有多少个后端人员就创建多少个开发分支 ...

  7. git本地以及远程分支回滚

    转:https://www.cnblogs.com/sunny-sl/p/11236280.html 1. git本地版本回退 Git reset --hard commit_id(可用 git lo ...

  8. MySQL中的重做日志(redo log),回滚日志(undo log),以及二进制日志(binlog)的简单总结

    MySQL中有六种日志文件,分别是:重做日志(redo log).回滚日志(undo log).二进制日志(binlog).错误日志(errorlog).慢查询日志(slow query log).一 ...

  9. 项目开发中Maven的单向依赖-2022新项目

    一.业务场景 工作多年,在真实的项目开发中经常会遇到将一个项目拆分成多个工程的情况,比如将一个真实的项目拆分成controller层,service层, dao层,common公共服务层等等.这样拆分 ...

  10. 事务配置在applicationContext.xml文件中不起作用,控制不了异常回滚

    一.博主在学习到整合ssm框架的时候,遇到一个奇葩的问题就是将 事务的控制 ,写在在applicationContext.xml文件中不起作用,在事务控制的方法中,即使出现了异常,但是事务不会回滚的坑 ...

随机推荐

  1. 【Mysql】复合主键的索引

    复合主键在where中使用查询的时候到底走不走索引呢?例如下表: create table index_test ( a int not null, b int not null, c int not ...

  2. C/C++ 通过CRC32实现反破解

    我们可以通过使用CRC32算法计算出程序的CRC字节,并将其写入到PE文件的空缺位置,这样当程序再次运行时,来检测这个标志,是否与计算出来的标志一致,来决定是否运行程序,一旦程序被打补丁,其crc32 ...

  3. 重写JSON.stringify与JSON.parse使其支持解析function类型

    const JSONStringify = (option) => { return JSON.stringify(option, (key, val) => { // 处理函数丢失问题 ...

  4. npm i -D和-s及-g以及--save的那些事

      i 是 install 的简写 -S 就是 --save 的简写 -D 就是 --save-dev 的简写 npm i module_name -S = > npm install modu ...

  5. Hive中Lateral view用法

    1. lateral view 简介   hive函数 lateral view 主要功能是将原本汇总在一条(行)的数据拆分成多条(行)成虚拟表,再与原表进行笛卡尔积,从而得到明细表.配合UDTF函数 ...

  6. JS leetcode 有序数组的平方 题解分析,灵活运用Math.pow与Math.abs方法

    壹 ❀ 引 郁闷的周一,晚上来做一道简单的算法题提提神,题目来自leetcode977. 有序数组的平方,题目描述如下: 给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也 ...

  7. Linux dmesg命令使用方法详解

    一.命令简介  dmesg(display message)命令用于显示开机信息.kernel 会将开机信息存储在 ring buffer 中.您若是开机时来不及查看信息,可利用 dmesg 来查看. ...

  8. 如何实现一款好用的云图(word-cloud)生成工具?

    创作背景 可以随时生成一副很酷的云图,一直是个人的梦想. 很久以前,写过一个简单版本:http://houbb.github.io/tools/wordCloud.html. 效果如下: 不过存在一些 ...

  9. CentOS7安装Chrome及驱动

    目录 安装Chrome 更新Chrome 安装Chrome驱动程序 更新Chrome驱动程序 环境:CentOS Linux release 7.4.1708 (Core) 安装Chrome 下载安装 ...

  10. Java - 将TXT文本文件转换为PDF文件

    与TXT文本文件,PDF文件更加专业也更适合传输,常用于正式报告.简历.合同等场合.项目中如果有使用Java将TXT文本文件转为PDF文件的需求,可以查看本文中介绍的免费实现方法. 免费Java PD ...