git add回退与git commit回退

一、git三种状态:

Git 有三种状态,你的文件可能 处于其中之一: 已提交(committed)、已修改(modified) 和 已暂存(staged)。

• 已修改表示修改了文件,但还没保存到数据库中。

• 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

• 已提交表示数据已经安全地保存在本地数据库中。

这会让我们的 Git 项目拥有三个阶段:工作区、暂存区以及 Git 目录。

git add 是将工作区已修改的文件提交到暂存区

git commit 是将暂存区的文件提交到Git 目录

二、add回退

1、如果执行git add之后,发现误添加了某个文件提交到了暂存区,可以通过以下命令撤回到工作区

git reset HEAD <文件名>

2、如果想将所有暂存区的文件撤回到工作区

git reset HEAD

三、commit回退

1、如果执行git commit之后,因为某种原因想撤销提交但仍然保留commit之前的修改,可以通过以下命令撤销提交:

# 将暂存区最近一次提交到Git目录的文件全部撤回到暂存区
git reset --soft HEAD^

2、如果想将git commitgit add一并撤回:

# 将暂存区最近一次提交到Git目录的文件全部撤回到暂存区,且将暂存区的文件全部撤回到工作区
git reset --mixed HEAD^

# 等同于该命令
git reset --soft HEAD^ && git reset HEAD

3、如果不想保留最近一次提交的所有修改:

git reset --hard HEAD^

猜你喜欢

转载自blog.csdn.net/m0_46829545/article/details/131282955