撤销 git add 和 git commit 操作
Git 操作 add commit 撤销
2023-09-11 14:19:00 时间
1. 撤销 git add
如果是撤销所有的已经add的文件:
git reset HEAD -- .
如果是撤销某个文件或文件夹:
git reset HEAD -- filename
2. 撤销 git commit
git reset --soft HEAD^
HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
其他参数解析:
-
--soft
不删除工作空间改动代码,撤销commit,不撤销git add . -
--mixed
不删除工作空间改动代码,撤销commit,并且撤销git add .
这个为默认参数, git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。 -
--hard
删除工作空间改动代码,撤销commit,并且撤销git add .
补充:如果该仓库到目前为止只有commit过一次代码,则会报错:
$ git reset HEAD^
fatal: ambiguous argument 'HEAD^': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
参考文章
相关文章
- Git Bash and Pageant are not using keys
- Git config with directory scope, containing multiple repositories
- 解决使用Git时报错"bash: $'302226git': command not found"
- git、git lfs常用操作
- git项目版本管理
- Git操作 【详细】【详细】
- 如何使用git获取pull request对应的补丁?
- 极简idea下git操作(一)- 代码提交,版本冲突
- git 替换分支强push
- git解决error: The following untracked working tree files would be overwritten by checkout
- git登陆
- 使用git进行批量操作
- git 常见的操作全解
- git积累
- git submodule 的使用
- Git_操作标签
- Git_git的诞生
- 浅析Git Subtree的原理与实际应用:git subtree是什么、子仓库与仓库共用、共用代码需求常规处理方式及为什么使用git subtree以及如何使用Git Subtree在多个Git项目间双向同步子项目
- 【Git】gitblit搭建git服务器-开机自启-Mac版
- git clone指定branch或tag
- 在CentOS VPS上源代码安装高版本号git
- git 放弃本地修改 强制更新
- Git for Windows之基础环境搭建与基础操作
- git fetch 的简单用法:更新远程代码到本地仓库及冲突处理
- 图文详细讲解IDEA操作Git,使用基本命令克隆项目提交拉取代码