git 取消上一次commit或push

这篇具有很好参考价值的文章主要介绍了git 取消上一次commit或push。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、取消上一次commit

方法1:使用 Git reset

方法2:使用 Git revert

方法3:使用 Git checkout

二、取消上一次push

git push --force

git reflog

git reset

git push --force

三、扩展

commit参数

--mixed

--soft

--hard

--amend


一、取消上一次commit

如果你需要取消上一次的 Git 提交,有几个不同的方法可以实现。其中包括撤消提交、提交到新的分支、使用 Git 回滚等等。

下面介绍三种方法:

方法1:使用 Git reset

使用 Git reset 命令来取消上一次提交:

git reset HEAD~1

这会把 HEAD 指针移回上一个提交(HEAD~1),并清除最后一次提交的内容。

git reset HEAD^

撤回两次或者n次

git reset HEAD~2

方法2:使用 Git revert

使用 Git revert 命令来撤消上一次提交并创建一个新的提交来撤消原来的提交:

git revert HEAD

这会创建一个新的提交来撤消提交之前的更改。在命令行中输入该命令后,你需要编辑撤消的提交信息,以便 Git 创建一个新的提交。

方法3:使用 Git checkout

还可以使用 Git checkout 命令来将工作树恢复到上一次提交的状态。这将清除所有未提交的更改,所以请确保你有一个备份:

git checkout HEAD~1

这会将工作树恢复到上一次提交的状态,也就是你上一次提交之前的状态。请注意,这里的修改都将被丢弃。

无论你使用的是哪种方法,请确保在撤消提交之前首先备份你的工作。这可以帮助你避免在操作过程中意外删除无法恢复的内容。

二、取消上一次push

如果你已经push了代码,并且想要撤回这个commit,可以通过以下步骤实现:

git push --force

首先,在使用git push命令时,需要加上--force参数,强制覆盖远程仓库上已经存在的commit。命令如下:

git push --force origin <branch_name>

其中,<branch_name>表示你要撤销的分支名称。

git reflog

如果在本地仓库没有回到该commit的上一个状态,需要使用git reflog命令找到该commit的SHA-1值。命令如下:

git reflog

该命令会列出整个Git仓库的提交历史记录,包括HEAD指针所指向的提交和已经被废弃的提交。

git reset

找到要回到的某个commit的SHA-1值,然后使用如下命令回到该commit的状态:

git reset --hard <commit_SHA-1>

其中,<commit_SHA-1>表示要回到的commit的SHA-1值。

git push --force

然后使用之前的推送命令进行推送,添加--force参数,覆盖远程仓库的历史提交记录。命令如下:

git push --force origin <branch_name>

提醒:使用git push --force命令可能会导致远程仓库、其他成员的仓库和历史版本产生不可逆的影响,因此操作时需要谨慎。一般情况下,在工作流中使用git revert命令回滚某个commit,以保证版本控制的完整性和可维护性。

三、扩展

git log  查看提交日志

commit参数

--mixed

 不删除工作空间改动代码,撤销 commit,并撤销 git add . 操作

 git reset --mixed HEAD^ 效果等同 git reset HEAD^

--soft

    不删除工作空间改动代码,撤销commit,不撤销git add .

--hard

    删除工作空间改动代码,撤销commit,撤销git add .

--amend

修改注释, 进入vim编辑器, 改完:wq即可

有用请点赞,养成良好习惯!

鼓励、交流、疑问请留言!文章来源地址https://www.toymoban.com/news/detail-558542.html

到了这里,关于git 取消上一次commit或push的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git撤销某一次commit提交

    如果您想彻底删除 Git 中的某次提交的内容,可以使用 git rebase 命令并将该提交删除。 以下是删除 Git 提交内容的步骤: 找到要删除的提交的哈希值。可以使用 git log 命令查看提交历史记录,然后找到要删除的提交的哈希值。 在终端中使用 git rebase -i 命令并指定要删除的提交

    2023年04月12日
    浏览(33)
  • 【Git 操作指南】| 撤销远程仓库的 push 以及 git commit 提交

    执行 git log 查看版本日志,找到目标版本。 执行 git reset --soft version numbere ,如 git reset --soft d8cedc98e008e14a35d3faf424764648fb29d55b ,重置为之前提交的版本,接着执行 git log 查看是否已经退回到之前的版本。 (注意, git reset --soft 只改变了 HEAD 的指向位置,本地代码不会发生改变

    2024年02月16日
    浏览(49)
  • Git基本操作之 修改提交信息 取消暂存文件 撤销文件修改

    git 文件分为         本地文件【即你当前在git  bash终端ls 看到的文件】         暂存文件【即你使用了git  add 之后存储在index file 的文件,此文件是下一步commit的暂存】         仓库文件【即执行了git commit之后的文件】 1.修改提交信息 ,这里指的是修改 git  commit的时

    2023年04月08日
    浏览(42)
  • IDEA git 代码已经commit,但未 push推送,如何撤销提交缓存区代码

    记录自己提交代码时,手滑错误commit了多余的文件,但未push到云端,想要撤回整个commit的操作: idea菜单栏上的 VCS–Git–Reset HEAD…     此时按照图中选择回退的方式,以及回退到哪个版本,点击“Reset”即可,在\\\"Version Control\\\" 中 “log” 里,最新一次提交的记录消失即回退

    2024年02月10日
    浏览(47)
  • Git撤销add 、Git撤销commit、修改commit注释

    1、已经commit但未push,回退本地提交代码: 格式 参数说明: --mixed(默认)    不删除工作空间的改动代码,撤销commit,撤销git add file. --soft(常用) 不删除工作空间的改动代码,撤销commit,不撤销git add file,如果还需要提交,直接commit即可. --hard(慎用) 删除工作空间的改动代码,撤销commi

    2024年02月15日
    浏览(45)
  • git reset 版本回退或撤销上一次pull操作

    在拉取分支准备合并的时候,发现分支拉错了,不想提交,这时候你应该回退一下你所拉取的分支 比如我现在已经执行完git pull 了,但是想回头git pull之前的内容 upstream 是我远程分支 pro是我远程分支的生产环境 现在我们先看看历史提交记录 git reflog 打印的更为详细一些 这里

    2024年02月11日
    浏览(37)
  • git commit之后,回退撤销commit

    在commit之后,发现有不需要提交的文件被提交上去了,好在还没有push到远端,需要撤回重新提交。 如果是用的是Sourcetree的话,打开Sourcetree操作如下 : 找到提交之前的版本的记录 右键这条提交记录,点击 将xxx重置到这次提交 : 选择 软合并 (软合并会保留这次的改动到本地

    2023年04月14日
    浏览(48)
  • ​如何撤销git commit​

    git commit后,还没执行push时, 如何撤销commit。 git add xxFiles git commit -m \\\"add xxx commit\\\" 一、解决方案 1. git reset --soft HEAD~1 执行此命令,本次的(这里HEAD~1)commit会被撤销,commit所对应的修改会撤回到暂存区当中, 即只是撤销了commit操作 ,比较安全,修改不会丢失 2. git reset --mix

    2024年02月11日
    浏览(32)
  • git commit后,如何进行撤销commit操作

    在我们使用git作为版本控制工具进行代码管理之后,经常性的会碰到一个问题:git commit后,如何撤销commit,下面详细讲一下。 git add newFiles git commit -m \\\'新增xx页面\\\' 执行commit后,还没执行push时,想要撤销这次的commit,该怎么办? 解决方案: 我们可以使用命令:git reset --soft

    2024年02月11日
    浏览(42)
  • idea git commit之后,撤销commit办法

    问题:idea提代码后,想撤销commit,怎么办捏??(T_T) To Cimmit:里面填写 HEAD~1 点击Reset即可撤销上次commit的内容; HEAD^的意思是上一个版本,也可以写成HEAD~1 如果你进行了2次commit,想都撤回,可以使用HEAD~2或者HEAD^^,以此类推… 首先了解: 工作区 - 暂存区 - 本地仓库 代

    2024年02月06日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包