【发布时间】:2016-06-29 00:33:44
【问题描述】:
我将 laravel 文件存储在 bitbucket 中,并且我还有该项目的本地副本。每次我保存本地副本时,我都会将其推送到 bitbucket 中的远程存储库,以便它们具有相同的更新。
问题:我在本地项目中犯了一个错误,我想删除bitbucket中远程存储库中的最新提交。
有人知道如何删除/删除 bitbucket 中的最新提交吗?
谢谢
【问题讨论】:
标签: git github bitbucket git-bash
我将 laravel 文件存储在 bitbucket 中,并且我还有该项目的本地副本。每次我保存本地副本时,我都会将其推送到 bitbucket 中的远程存储库,以便它们具有相同的更新。
问题:我在本地项目中犯了一个错误,我想删除bitbucket中远程存储库中的最新提交。
有人知道如何删除/删除 bitbucket 中的最新提交吗?
谢谢
【问题讨论】:
标签: git github bitbucket git-bash
首先撤消本地存储库中的最后一次提交:
如果您想取消提交但将更改保留在文件树中,请使用
git reset HEAD~1
如果您想完全摆脱更改,请运行
git reset --hard HEAD~1
接下来,将您的存储库推送到 bitbucket。
【讨论】:
你可以使用 git hard reset git reset documentation 那么你只需要强制推送你的存储库
【讨论】:
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。
【讨论】:
看看这篇文章:
How to move HEAD back to a previous location? (Detached head)
它将描述这样做的方法。
但请记住,如果您的服务器不允许强制推送,您将无法将旧的提交 HEAD 推送到服务器,
【讨论】:
$ git reset --hard HEAD~1
$ git push -f
【讨论】: