git撤回已经commit未push的操作
一.使用IntelliJ idea
VSC => Git
=> reset head
=> 退回到上次commit
=> 退回到第2次提交之前
=> 退回到指定commit版本
Reset Type 有三种:
Mixed 默认方式,只保留源码,回退 commit 和 index 信息。
Soft 回退到某个版本,只回退了 commit 的信息,之前写的代码还是保留的,不会恢复到 index file 一级。如果还要提交,直接 commit。
Hard 彻底回退,本地源码也会变成上一个版本内容,不保留之前 commit 的代码
To Commit 是回滚到哪个版本,例如,HEAD 为当前版本,HEAD^ 为上一个版本;
使用 git reset 回滚一般使用默认的 mixed 或者粗暴的 hard 方式;
二.使用git命令
写完代码后,我们一般这样
git add . //添加所有文件
git commit -m “本功能全部完成”
执行完commit后,想撤回commit,怎么办?
git reset --soft HEAD^
git reset HEAD~
这样就成功的撤销了你的commit
注意,仅仅是撤回commit操作,您写的代码仍然保留。
说一下个人理解:
HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
至于这几个参数:
–mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
–soft
不删除工作空间改动代码,撤销commit,不撤销git add .
–hard
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:
git commit --amend
此时会进入默认vim编辑器,修改注释完毕后保存就好了。
git撤回已经commit未push的操作相关推荐
- IDEA使用(03)_git撤回(已经commit未push的)操作
1.问题来源 日常工作中会遇到 commit 到本地仓库的代码,因为一些原因,需要撤销后再提交到本地,或者需要整合多次 commit,然后 push 到远程仓库. 2.IDEA解决方案 I.在idea ...
- Git 删除本地commit未push文件 ,push本地commit文件
1,起因 在push文件的时候, push了一个大家伙,有400M, 但是push要求单个文件大小不能超过200M 所以,这个大家伙已经进行本地commit,但又不能push上去, 导致在这之后需要p ...
- Git commit/pull/push的操作步骤
1.操作步骤需要严格执行如下顺序:commit->pull->push 2.commit:将代码提交到本地仓库. 3.pull:将远程仓库代码同步到本地仓库.如遇冲突,解决冲突,重复com ...
- git 撤销修改:未push 、已push
场景:不小心把一次错误的代码push到远程服务器上的分支上,需要立即删除/撤销这次代码提交. 具体方法,git命令: git log git reset --hard <commit_id> ...
- git撤回上一次push
描述 我们有时候误提交代码需要回滚到上一个版本,需要通过git命令重新提交处理 过程 1. 重置到提交前的版本 git reset 命令用于回退版本,可以指定退回某一次提交的版本. git reset ...
- [超详细] Git 远程仓库及回滚日志操作
一.远程仓库基本操作 1.拿到仓库地址(以GitEE为例): 2.初始化Git: 使用命令:git init 在准备存放的文件夹里使用命令git init进行初始化,也就是把这个文件夹变成git专属文 ...
- 文件在IDEA中已进行Git的Commit操作,使其从暂存区提交到本地仓库,但是未Push到远程仓库,此时进行Pull操作出现代码冲突
问题描述:文件在IDEA中已进行Git的Commit操作,使其从暂存区提交到本地仓库,但是未Push到远程仓库,此时进行Pull操作出现代码冲突 解决方法:出现上述情况时,我们要先将文件从本地仓库中拉 ...
- IDEA git 代码已经commit,但未 push推送,如何撤销提交缓存区代码
记录自己提交代码时,手滑错误commit了多余的文件,但未push到云端,想要撤回整个commit的操作: idea菜单栏上的 VCS–>Git–>Reset HEAD- 出现如下弹框: ...
- Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突...
Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突 这篇是接着上篇分布式版本库--Windows下G ...
最新文章
- 负数对2取余_不同语言的负数取余问题
- Tengine(nginx) 搭建Tomcat集群
- Lintcode 973 解题思路及c++代码
- JDK1.8源码(六)——java.util.LinkedList 类
- 在sqlplus中操作blob和clob
- Android Studio快捷键之代码提示
- 史上最惨锦鲤即将来袭!奖品堪比5年高考3年模拟!
- __name__ == '__main__'的用法
- 10.2.0.3.0 oracle导出,oracle 数据库从10.2.0.4升级到11.2.0.3
- 解决 安装或卸载软件时报错Error 1001 的问题
- Python+Selenium开发工具安装及下载
- Anaconda-Navigator无法打开
- Android TV开发总结【适配】
- GAMES101 13节 光线追踪 笔记
- android studio app字体大小设置,Android Studio App设置TextView文字内容大小颜色
- 如何让计算机显示器满屏,电脑显示器满屏条纹的解决方法
- Substance Painter里 AO贴图 烘焙黑图 原因
- OPENMV羽毛球识别
- linux 磁盘操作
- Excel函数(五)- 超有用的count系列函数count、counta、countif、countifs
热门文章
- 问题解决:Ubuntu 磁盘空间占满如何清理
- 解决onenote绘图内置笔无压感问题
- win10远程桌面连接_Win10这隐藏功能太良心!远程解决电脑问题神器“快速助手”...
- AppConfig增加IsEnumToInt配置
- vue中局部页面跳转_vue使用感受(二)组件间跳转
- 语言的魅力:斡旋的力量(二)
- EXCEL 对数据分列
- 迅雷再见!在全球交友网站Github,找到的6款神软件
- 高中可以学计算机吗,我是一名高中生想学计算机专业请问有前途吗?
- QQ邮箱漂流瓶功能将于明天正式关闭