【问题标题】:How to delete latest Git commit in Bitbucket?如何在 Bitbucket 中删除最新的 Git 提交?
【发布时间】:2016-06-29 00:33:44
【问题描述】:

我将 laravel 文件存储在 bitbucket 中,并且我还有该项目的本地副本。每次我保存本地副本时,我都会将其推送到 bitbucket 中的远程存储库,以便它们具有相同的更新。

问题:我在本地项目中犯了一个错误,我想删除bitbucket中远程存储库中的最新提交。

有人知道如何删除/删除 bitbucket 中的最新提交吗?

谢谢

【问题讨论】:

    标签: git github bitbucket git-bash


    【解决方案1】:

    首先撤消本地存储库中的最后一次提交:

    如果您想取消提交但将更改保留在文件树中,请使用

    git reset HEAD~1
    

    如果您想完全摆脱更改,请运行

    git reset --hard HEAD~1
    

    接下来,将您的存储库推送到 bitbucket。

    (source and more detail)

    【讨论】:

    • 谢谢。你是大师
    【解决方案2】:

    你可以使用 git hard reset git reset documentation 那么你只需要强制推送你的存储库

    【讨论】:

    • 嗨@Taj,你有一个简单的答案,但你是对的。谢谢
    【解决方案3】:

    git reset --soft HEAD^

    首先,删除本地存储库中的提交。您可以使用git rebase -i 执行此操作。例如,如果这是您的最后一次提交,您可以执行 git rebase -i HEAD~2 并删除弹出的编辑器窗口中的第二行。

    然后,使用git push origin +master 强制推送到您的代表

    请参阅Git Magic Chapter 5: Lessons of History - And Then Some 了解更多信息(即,如果您想删除较旧的提交)。

    请查看git rebase -i的替代方案

    工作树很脏,你必须先做一个git stash,然后再做一个git stash apply

    【讨论】:

      【解决方案4】:

      看看这篇文章:

      How to move HEAD back to a previous location? (Detached head)

      它将描述这样做的方法。

      但请记住,如果您的服务器不允许强制推送,您将无法将旧的提交 HEAD 推送到服务器,

      【讨论】:

        【解决方案5】:

        Git 从 Bitbucket 中删除最后一次提交。

        1. $ git reset --hard HEAD~1

        2. $ git push -f

        • reset hard hard 1:用于删除
        • push -f: 用于修复提交服务器。

        【讨论】:

          猜你喜欢
          • 2016-11-19
          • 2012-12-12
          • 2013-01-28
          • 2019-02-05
          • 2021-06-19
          • 1970-01-01
          • 2021-11-21
          • 2011-01-29
          相关资源
          最近更新 更多