August Rush

一个还在努力成长的小火汁!

游龙当归海,海不迎我自来也。

We create our own demons.

You can reach me at augustrush0923@gmail.com
撤销git commit操作的3个指令
发布:2022年06月20日 | 作者:augustrush | 阅读量: 863

Git 空间介绍

正常书写代码时,代码都存储在工作区。当书写完毕,执行add操作后,代码就会被提交到暂存区。此时紧接着执行commit操作后,代码就会被提交到本地分支上。

实操:

1: 本地新建git仓库并执行一次提交

2: 在main.py中新增一些变更,然后执行提交操作


本地分支撤销到暂存区

git reset --soft `版本号`

此时只会撤销commit的操作,不会撤销add操作。也就是说只会影响到暂存区,不会影响到工作区

3: 此时因为code review或一些其他原因需要撤销到暂存区时


本地分支撤销到工作区

git reset --mixed `版本号`

撤销commit, 撤销add,不删除工作区改动的代码。

4: 当想撤销 commit提交的代码时


回退到上一个版本

git reset --hard `版本号`

撤销commit,撤销add,删除工作区改动的代码。

5: 当想撤销到上一个版本时,不想保留工作区代码的时


可能遇到的问题

当使用HEAD^代表上一个版本号时进行回退时,可能会遇到如下问题。

查了下原因可能有两种:

  • 因为cmd控制台中换行符默认是^,而不是\ ,所以^符号被git编译为换行符了,解决方案:
  1. git reset --hard "HEAD^"

  2. git reset --hard HEAD~[return times]

  • 该仓库到目前为止只有commit过一次代码,故已经是head版本,也会报这样的错,无需关心直接commit或者rm即可


  • 标签云

  • 支付宝扫码支持一下

  • 微信扫码支持一下



基于Nginx+Supervisord+uWSGI+Django1.11.1+Python3.6.5构建

京ICP备20007446号-1 & 豫公网安备 41100202000460号

网站地图 & RSS | Feed