赞
踩
有时候提交代码并push后,发现修改并不完善或者造成其它情况,有需要将此次push撤销掉。方法如下:
参考这边文章 使用TortoiseGit进行代码回滚和代码合并_bai_Dreamer的博客-CSDN博客
如果只需要将最近一次撤销,并重新修改代码提交。
1、先show log
2. 在上一个版本的log上右击选择Reset this to this vision。在弹出的对话框中选择reset Type 为hard。
本地代码就回到上一版本了。(尽管此时在git上看到的代码还存在想撤销的那个提交)
然后进行修改。修改完后,提交代码。
在PUSH的时候,Options中选择 force known changes.
新的提交就会将需要撤销的那次提交覆盖掉了。
==========================================================
以下为GIT命令的实现方法:
假设当前提交不对。
一、执行 git log 查看上一次提交的commit
commit 278a51d466e29262c74d89e3ad322a137d7cdcd1
Author: xxxx <xxxx@lovegong.com>
Date: Wed Mar 10 03:21:41 2021 -0800
[IM]:这是一次错误的提交
commit 7fab932ee130f9d010bf29a5f29ca46eb6815ed6
Author: xxxx
Date: Wed Mar 10 10:29:30 2021 +0800
[IM]:打包脚本优化,这是上一次的提交,需要回到这里。
二、执行 git reset --soft 7fab932ee130f9d010bf29a5f29ca46eb6815ed6
--soft可以将错误的提交内容继续保留,如果用--hard,那相应的文件也回到了上一次提交时的内容了。因此用hard选项之前,需要自己先将修改的文件做个备份。
三、 vim 编辑你的代码或需要修改的工程文件。
四、执行 git add test.cpp 或其它git操作
五、执行 git commit -m "[BF]:提交注释"
六、执行 git push --force --progress "origin" private/my_proj:private/my_proj
其中 private/my_proj为你的分支名称。
附:
如果只是commit了,还没有push,需要撤销这次commit,但是修改的东西文件继续保留在本地,操作如下:
git reset --soft HEAD^
这样就成功的撤销了你的commit
=====================================
如果是想去除最后一次提交,不是修改覆盖提交,那么跳过“第五步 git commit” 操作(当然第3、4两步也没有操作的必要了),直接进行第六步
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。