git add 添加了不想要的文件,如何撤删

git add .

先看一下 add 中的文件

git status

撤删add的所有文件

git reset HEAD

对某一个文件进行撤删

git reset HEAD src/mode/hello.java
  • git reset :回滚到某次提交。
  • git reset --soft:此次提交之后的修改会被退回到暂存区。
  • git reset --hard:此次提交之后的修改不做任何保留,git status 查看工作区是没有记录的。
  1. 回滚代码
    如果需要删除的 commit 是最新的,那么可以通过 git reset 命令将代码回滚到之前某次提交的状态,但一定要将现有的代码做好备份,否则回滚之后这些变动都会消失。具体操作如下:
  1. git log // 查询要回滚的 commit_id
  2. git reset --hard commit_id // HEAD 就会指向此次的提交记录
  3. git push origin HEAD --force // 强制推送到远端

修改完了本地代码,执行了下面的命令提交了代码:

git add .
git commit -m '修改......'

突然发现没有先拉取最新的代码,为了避免冲突,此时想要将commit撤回,使用下面的命令即可:

git reset --soft HEAD^

上面的命令中,HEAD^ 表示上一个版本,即上一次的commit,也可以写成HEAD~1;

如果想要撤回两次的commit,可以使用HEAD~2;

如果想要连着add撤销的话,将–soft改为–hard(删除工作空间的改动代码)。