如何使用Git进行撤销最近的一次commit操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计297个文字,预计阅读时间需要2分钟。
Git撤销已经commit但未push的本地提交,可使用以下命令:
bashgit reset --soft|--mixed|--hard commit_id
其中:- `--mixed`(默认):不删除工作区改动的内容,撤销commit和git add,但保留暂存区的改动。- `--soft`:不改变工作区内容,只撤销commit和git add,保留暂存区的改动。
例如,撤销commit并保留工作区改动:
bashgit reset --soft commit_id
Git撤销commit 已经commit但未push 回退本地提交代码 格式git reset --soft|--mixed|--hard <commit_id>
说明--mixed(默认)
不删除工作空间的改动代码,撤销commit,撤销git add file.
--soft(常用)
不删除工作空间的改动代码,撤销commit,不撤销git add file,如果还需要提交,直接commit即可.
--hard(慎用)
删除工作空间的改动代码,撤销commit,撤销add.
git reset --soft adsc876
强制提交(风险较高,确定无影响可以使用) 示例git push develop develop --force (本地分支和远程分支都是 develop)
已经pushgit revert <commit_id>
说明git revert是用一次新的commit来回滚之前的commit,
这时再 git push 既可以把线上的代码更新。
本文共计297个文字,预计阅读时间需要2分钟。
Git撤销已经commit但未push的本地提交,可使用以下命令:
bashgit reset --soft|--mixed|--hard commit_id
其中:- `--mixed`(默认):不删除工作区改动的内容,撤销commit和git add,但保留暂存区的改动。- `--soft`:不改变工作区内容,只撤销commit和git add,保留暂存区的改动。
例如,撤销commit并保留工作区改动:
bashgit reset --soft commit_id
Git撤销commit 已经commit但未push 回退本地提交代码 格式git reset --soft|--mixed|--hard <commit_id>
说明--mixed(默认)
不删除工作空间的改动代码,撤销commit,撤销git add file.
--soft(常用)
不删除工作空间的改动代码,撤销commit,不撤销git add file,如果还需要提交,直接commit即可.
--hard(慎用)
删除工作空间的改动代码,撤销commit,撤销add.
git reset --soft adsc876
强制提交(风险较高,确定无影响可以使用) 示例git push develop develop --force (本地分支和远程分支都是 develop)
已经pushgit revert <commit_id>
说明git revert是用一次新的commit来回滚之前的commit,
这时再 git push 既可以把线上的代码更新。

