git commit提交以及撤销commit操作详解

场景

在日常开发中,我们使用git作为版本控制工具管理分支代码,提交版本打标签十分便捷,但也经常会

遇到提交了想撤回的尴尬情况,///不过不用慌,平时养成发布版本前仔细核验的好习惯之外,还有

补救的措施,下面讲下使用git 如何提交信息,如何撤销以及修改信息等等。

流程

git add 1.txt  #git add命令可将该文件添加到暂存区
		  	   #也可以将多个文件添加到暂存区:git add 1.txt 2.txt
		  	   #还可以将本目录下文件添加暂存区  git add .		  	  
git commit -m '提交1.txt'   

#此时执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?
git reset --soft HEAD^  #这样成功撤销commit
#如果控制台出现More?,则将命令改成 git reset --soft HEAD^^即可)

#如果想要撤销暂存区的内容
git reset --hard HEAD^  #这样成功撤销add

#如果只是想修改commit的注释内容
git commit --amend -m "修改commit的信息"     #这样成功修改commit信息

参数说明

  • HEAD^:表示上一个版本(上一次的commit),也可以写成HEAD~1,几个^ 代表几次提交,如果回滚两次就是HEAD^^。如果你进行了2次commit,想全部撤回,可以使用HEAD~2

  • --soft:不删除工作空间改动代码,撤销commit,不撤销git add .

  • --hard:删除工作空间改动代码,撤销commit,撤销git add .

  • --mixed:此为默认方式(如果不指定reset的模式,默认使用 -mixed模式,即git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的),不带任何参数的git reset,即时这种方式,它回退到某个版本, 只保留源码,回退commit和add信息

注意

  • 平时提交仔细检查下可以省去以上步骤
  • git commit 的 -m参数可以不写,进入vim写入保存退出即可
  • 使用vscode界面开发提交也是十分方便的,git add一键+

猜你喜欢

转载自blog.csdn.net/qq_44333320/article/details/128643362