如何在“git Push”之后在本地和远程撤消“git commit”

2024-04-10

我已经表演过git commit随后是一个git push。如何在本地和远程存储库上恢复该更改?

$ git log
commit 364705c23011b0fc6a7ca2d80c86cef4a7c4db7ac8
Author: Michael Silver <Michael [email protected] /cdn-cgi/l/email-protection>
Date:   Tue Jun 11 12:24:23 2011 -0700

git reset --hard HEAD~1
git push -f <remote> <branch>

(推送示例: git push -f origin bugfix/bug123)

这将撤消上次提交并将更新的历史记录推送到远程。您需要通过-f因为您要替换远程中的上游历史记录。

Edit:

请注意--hard将使您的提交无法访问(即它似乎已被删除,但您仍然可以git show <hash> or git log <hash>如果你还记得它的哈希值的话)。如果您想保留更改,请运行:

git reset [--mixed] HEAD~1

此时,您已经进行了未暂存的更改,因为您使用了--mixed,这是默认值。

您可能首先要先更新远程树(即删除提交):git push -f <remote> <branch>

由于您仍然在本地进行更改,因此您可以创建另一个分支并commit他们在那里(并且push如您认为合适)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在“git Push”之后在本地和远程撤消“git commit” 的相关文章

  • 使用 TFS 个人访问令牌克隆 Git 存储库

    我正在尝试以编程方式克隆 git 存储库 我的 ASP NET MVC 应用程序正在创建并启动一个进程 处理进程的代码工作正常 但是当尝试使用本地 TFS PAT 克隆 git 存储库时 身份验证失败 我无法使用 NTLM 或要求用户输入凭
  • Git 不断提示我输入密码

    我已经使用 Git 一段时间了 但是不断要求输入密码开始让我感到厌烦 我使用的是 Mac OS X 和 GitHub 并且按照 GitHub 的说明设置了 Git 和我的 SSH 密钥设置 Git 页面 http help github c
  • git diff 在尖括号中显示 unicode 符号

    我有一个带有 unicode 符号 俄语文本 的文件 当我修复一些拼写错误时 我使用git diff color words 看看我所做的改变 如果是 unicode 西里尔文 符号 尖括号会造成一些混乱 如下所示 cat p1 cat p
  • 推送时发生 Git 错误 - update_ref 失败

    当我尝试推送本地提交时遇到问题 这可能是在 Android Studio 崩溃时发生的 这是错误 update ref 引用 refs remotes origin master 失败 无法锁定 ref refs remotes origi
  • 分支明显不同,但提交历史是相同的

    git status告诉我我的分支和我在另一个存储库上开始的分支已经分歧 On branch master Your branch and origin master have diverged and have 13 and 13 dif
  • 如何解决 VSTS 中拉取请求中的合并冲突?

    我已经创建了拉取请求 我进入了这个 批准 按钮不执行任何操作 并且 完成 被禁用 如何解决拉取请求中的冲突 Update 微软刚刚添加了基于浏览器的合并 这可能会让你摆脱小冲突的困境 并提供自 Sprint 150 起改进了不同场景的可视化
  • git - 更新 fork 的 master 并将我的分支重新建立到它之上?

    我分叉了一个 github 项目 然后将其克隆到本地 然后我在新分支中做了一些更改my github the project repo 然后我添加并提交了更改 并推送到我的 github 存储库并提交了拉取请求 所有者已收到我的请求 并希望
  • 代表 Git 存储库的数学结构是什么

    我正在学习 Git 如果我能描述一下代表 Git 存储库的数学结构 那就太好了 例如 它是一个有向无环图 它的节点代表提交 它的节点有代表分支等的标签 每个节点最多一个标签 没有标签使用两次 我知道这个描述不正确 我只是想解释我正在寻找的内
  • git push heroku master 权限被拒绝

    我正在关注 ruby railstutorial 我运行命令 git push heroku master 它吐出了这个错误 Permission denied publickey fatal Could not read from rem
  • 在 github 上的 fork 中跟踪上游的最佳实践

    摘要 对于要维护一组本地更改的上游存储库 处理长期运行跟踪的最佳实践是什么 我想让 github 上的 fork 与上游保持同步 但仍然允许清晰跟踪 fork 特有的更改 对于本次讨论 假设upstream指向主项目存储库并且origin指
  • git Push over sshfs 失败,并显示“关闭 sha1 文件时出错:错误的文件描述符”

    我们使用 sshfs 通过 SSH 安装文件系统 并将其用作 git 存储库协作的远程存储 Mac OSX 10 6 6 到 RHEL 3 服务器 SSHFS 版本 2 2 MacFUSE SSHFS 2 2 0 MacFUSE 库版本 F
  • `git ls-files -s` 输出中不同字段的含义是什么?

    在 Git 中 命令返回的典型结果行git ls files s好像 100755 be2c2e9b0966253096472d4b482c458bc892e493 0 gitignore 这些字段是什么意思 不用再犹豫了git ls fi
  • 哪个是更智能的 git 协议,ssh 或 git(通过 ssh)或 https 协议?

    哪个高效 SSH 或 Git 文件压缩 我对 Git 的理解是 git 协议很智能 因为通信两端都有一个协议代理来压缩文件传输 从而通过有效地使用网络带宽来实现更快的克隆 From 我发现了以下说法 For secure authentic
  • .gitconfig 别名函数调用

    我在 gitconfig 中定义了以下别名 alias teamcity tc tc是我在我的中定义的一个shell函数 bashrc文件 由于某种原因 我收到以下错误 aafghani 03 git workday amirafghani
  • git 别名中的 AWK 语句

    我正在尝试创建一个 git 别名来以特定格式打印日志中的所有拉取请求 但是 我在使用 AWK 删除双空格时遇到问题 这是使用以下命令的 git log 的输出 git log merges grep pull request pretty
  • 默认情况下 git merge -Xignore-space-change

    我该如何设置该选项ignore space change对于所有合并使用git config 我也许可以使用别名merge 但因为我希望该设置应用于git stash pop git stash apply git pull and git
  • 创建一个空分支?

    我有一个包含项目的 git 存储库 我现在要对这个项目进行大规模的修改 如何为这次大修创建一个空白的新分支 然后当完成时 如何将这个分支切换到master 使用 checkout orphan 命令 git checkout orphan
  • Android 存储库初始化失败

    我想我非常仔细地遵循该网站的说明 http source android com source downloading html http source android com source downloading html 但是当我尝试这
  • 为什么 Git 无法将文件更改与修改后的父级/主控合并?

    我有一个文件 里面只有一行 我创建一个分支并向同一文件添加第二行 保存并提交到分支 我切换回主人 并向文件中添加不同的第二行 保存并提交给master 现在总共有 3 条独特的线路 如果我现在尝试将分支合并回主分支 则会遇到合并冲突 为什么
  • 使当前提交成为 Git 存储库中唯一(初始)提交?

    我目前有一个本地 Git 存储库 我将其推送到 Github 存储库 本地存储库有约 10 次提交 Github 存储库是其同步副本 我想要做的是从本地 Git 存储库中删除所有版本历史记录 以便存储库的当前内容显示为唯一提交 因此存储库中

随机推荐

  • AttributeError:使用 CRF 时“Tensor”对象没有属性“_keras_history”

    我知道关于这个问题有很多问题 我已经阅读了其中的一些问题 但没有一个对我有用 I am trying to build a model with the following architecture 代码如下 token inputs In
  • sys.stdout.flush 在 jupyter 笔记本中不起作用

    所以我只想重新运行此存储库中的代码 https github com dennybritz reinforcement learning blob master MC MC 20Prediction 20Solution ipynb htt
  • 如何正确重写 JacksonAnnotationIntrospector._findAnnotation 以替换元素的注释

    我正在尝试创建一些可由杰克逊序列化的类 我想用标准 Jackson 注释来注释一些元素 让我们考虑一下JsonIgnore对于这个例子 但我希望它们只在我的特定映射器中有效 因此 我决定创建自己的注释 例如标准注释 例如 MyJsonIgn
  • 在现有表上创建序列

    如何在表上创建一个序列 使其从 0 gt 最大值 我尝试使用以下 SQL 代码 但它不会将任何值插入到我正在使用的表中 CREATE SEQUENCE rid seq ALTER TABLE test ADD COLUMN rid INTE
  • 如何修复信号器的 ChunkLoadError

    我在本地运行我的 nx 站点时遇到问题 任何使用 signalR 的联合应用程序都开始抛出 ChunkLoadError 我尝试过更改 signalR 的版本 重新加载 清除缓存并单独运行我的联合应用程序 结果总是一样的 Uncaught
  • 如何找到 Discord 机器人所连接的语音聊天

    我正在制作一个通过语音识别激活的不和谐机器人 我一开始就让他加入语音频道 正在运行 我试图发出命令让他离开 const commando require discord js commando class LeaveChannelComma
  • 如何解决2+2和2++2冲突

    在更大的程序中 我给出了以下内容 flex bison In flex pn dig 0 9 exp e E dig printf detected n return PLUS SIGN pn dig printf digit detect
  • 从 Console.ReadLine 输入检索数据类型

    我对编程还很陌生 我遇到了挑战 但我需要你的帮助 我的任务是编写一个程序 从控制台读取一些内容 然后如果它的数字它会打印 1 如果它的字符串它看起来像这样 string 这是我的代码 但有问题 我无法弄清楚 必须使用 Switch Case
  • DBD::Oracle 安装导致错误

    我想通过 Perl 连接到 Oracle 数据库 为此 我尝试使用以下命令从 CPAN 安装 DBD Oracle root localhost Admin cpan DBD Oracle 在我的 Linux 终端上运行上述命令时 出现以下
  • 授予 bjyauthorize 从 CLI 运行 ZF2 mvc 应用程序的权限

    我在 ZF2 上有一个完全运行的 mvc 应用程序 我想从命令行运行一些操作 我已经正确设置了控制台路由和其他环境 当我从 CLI 运行我的应用程序时 出现权限被拒绝的异常 如下所示 You are not authorized to ac
  • 从源代码编译 Ruby 1.8.7 时出错:math.c:37: 错误:标记“(”之前缺少二元运算符

    这真的很奇怪 josh josh wget ftp ftp ruby lang org pub ruby 1 8 ruby 1 8 7 tar bz2 josh josh tar xvjf ruby 1 8 7 tar bz2 josh j
  • Xcode Autolayout - 约束等于另一个约束

    我终于尝试在 IB 中采用自动布局 但在为某些对象设置约束时遇到问题 我基本上希望 5 个视图在整个超级视图中垂直均匀分布 我有 3 个按钮 由 2 行分隔 我希望间距 D1 D2 D3 和 D4 相等WITHOUT调整任何东西的高度 在I
  • Laravel 4 + AJAX 不工作

    我对 Laravel 4 很陌生 我正在尝试测试 AJAX 请求 In my script js我有这个 function login submit click function e e preventDefault return ajax
  • Ruby 模型的数组属性

    是否可以为数组类创建一个属性 我尝试阅读this https stackoverflow com questions 3438827 ruby model with an array as an attribute但我并没有从中得到太多 我
  • 无法在真实设备上的 iOS 10 上运行 Appium 测试

    自从将我的设备和 xCode 更新到 iOS 10 和 Xcode 8 以来 我一直无法在真实设备上成功设置 Appium 测试 不过 我在模拟器上运行得很好 以下是我的功能设置 DesiredCapabilities cap new De
  • Rails 表单动态添加字段

    我正在尝试设置一组字段以根据需要动态显示 在模型中 我有以下字段 attr accessible instruct1 instruct2 instruct30 我希望表单只显示 instruct1 并带有一个按钮来添加 1 个字段 直到击中
  • 在 Apex 类中引用远程站点设置 URL?

    我有一个 webservice 类 它将位于托管包中并分发给多个客户端 该类当前有一个变量 其中包含它所访问的服务器的硬编码值 问题 每个客户端的服务器都不同 因此硬编码值不起作用 我认为由于每个客户端都必须将其服务器添加到其远程站点设置中
  • 如何比较 MySQL 数据库模式 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在寻找一个可以让我比较 MySQL 数据库模式的工具 哪个是最好的工具来做到这一点 Navicat 能够为您做到这一点 它还将同步两个 mysql
  • AES加密/解密

    以下是一些适用于字符串的代码 Public Function AESEncrypt ByVal PlainText As String ByVal Password As String ByVal salt As String Dim Ha
  • 如何在“git Push”之后在本地和远程撤消“git commit”

    我已经表演过git commit随后是一个git push 如何在本地和远程存储库上恢复该更改 git log commit 364705c23011b0fc6a7ca2d80c86cef4a7c4db7ac8 Author Michael