一、模拟使用场景
先在仓库中创建一个名为"3.c"的文件,然后git add 和git commit,再git log查看如下图所示:
二、回撤git commit 但保留git add,缓冲区的修改记录还在
使用命令:git reset --soft ,后面接上一次记录的commit id,使用该命令后git status 能看到修改记录,如下图所示:
执行命令 git reset --soft c06a4af1216dd928b3fef26b305da37b1ceb2ddc 后,git log和git status
三、同时回撤git add和git commit,缓冲区的修改记录还在
使用命令:git reset --mixed ,后面接上一次记录的commit id
git reset --mixed c06a4af1216dd928b3fef26b305da37b1ceb2ddc,再git log 和 git status,如下图所示:
四、同时回撤git add和git commit,但缓冲区的修改记录被删除
使用命令:git reset --hard ,后面接上一次记录的commit id
git reset --hard c06a4af1216dd928b3fef26b305da37b1ceb2ddc,再git log 和 git status,如下图所示:
五、总结
一般git reset --mixed和git reset --soft使用比较多