Q:我要撤销已经添加到暂存区中的修改,即让暂存区与最近的提交保持一致,可以使用那些命令?
A:可以使用如下三条命令中的任意一条(PS:三条命令等效):
git reset
git reset HEAD
git reset --mixed HEAD
Q:如果我只想针对某些文件撤销暂存区中的修改呢?
A:针对某些具体文件的话需要在 reset 命令后加上-- filename 即可,如下:
git reset HEAD -- f1.txt f2.txt
Q:如果我想撤销所有工作区和暂存区的变更呢?
A:需要使用reset 命令加上--hard 即可,如下:
git reset --hard HEAD
Q:如果我想回退到某个指定的提交,该怎么办呢?
A:只需要加上你要退回的提交对应的 commitid 即可,如下:
git reset --hard commitID
如下场景:
你已经将部分提交暂存到了暂存区,然后继续在工作区工作,工作区产生了新的变更,但是这些新变更没有添加到暂存区,此时你创建了提交,刚刚创建完提交你就后悔了,你想要的回到提交创建前一刻的状态,可以使用如下命令
git reset --soft HEAD~
使用如下命令可以撤销工作区中file1文件的相关变更,可以细分为两种情况
git checkout --file1
网友评论