当前位置:   article > 正文

【git】取消add、commit操作命令_git 取消commit

git 取消commit

取消已add的文件

  1. 保留工作目录 变为红色
git reset D:\workspace\demo\git-demo\src\main\java\com\iteng\git\demo3.java
git reset file1 file2
# 或者
git reset *.txt
  • 1
  • 2
  • 3
  • 4
  1. 从暂存区和工作目录中删除 文件丢失
# -f 强制删除
git rm -f <file>
  • 1
  • 2

一、取消最近一次提交(未推送到远程仓库)

使用 git reset

  1. 保留工作目录、暂存区(即只取消提交)变为绿色
git reset --soft HEAD~1
  • 1

这会将当前分支回退到上一个提交,但保留所有更改在暂存区。

  1. 保留工作目录(即取消提交、暂存区)变为红色
git reset --mixed HEAD~1
  • 1

这会将当前分支回退到上一个提交,暂存区不会被保留。

  1. 文件不保留(即取消提交、暂存区、删除文件)文件丢失
git reset --hard HEAD~1
  • 1

这会将当前分支回退到上一个提交,并且丢弃工作目录中的所有更改。

二、回退到指定的一次提交

git reset --soft abc123
git reset --mixed abc123
git reset --hard abc123
  • 1
  • 2
  • 3

三、取消已经推送到远程仓库的提交

如果你已经将提交推送到远程仓库,需要更加小心,因为这可能影响其他开发者。以下是一些常用方法:

  1. 使用 git revert

git revert 会创建一个新的提交,撤销指定的提交。这是一个安全的方式,不会影响提交历史。

git revert <commit>
  • 1

这将生成一个新的提交,用于撤销指定的提交。

三、总结

  • 取消本地提交:使用 git reset(–soft、–mixed、–hard)根据需要保留或丢弃更改。
  • 取消已经推送的提交:使用 git revert 来创建一个新的撤销提交,或者在确保不会影响其他开发者的情况下使用 git reset 结合 git push --force。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/935668
推荐阅读
相关标签
  

闽ICP备14008679号