我将laravel文件存储在bitbucket中,我还有一个项目的本地副本。每次我保存本地副本时,我都会将其推送到bitbucket中的远程存储库,以便它们具有相同的更新。
问题:我在本地项目中犯了一个错误,我想在bitbucket中删除Remote Repository中的最新提交。
有没有人知道如何删除/删除bitbucket中的最新提交?
由于
答案 0 :(得分:6)
首先撤消本地存储库中的最后一次提交:
如果要取消提交但保留文件树中的更改,请使用
git reset HEAD~1
如果您想完全摆脱更改,请运行
git reset --hard HEAD~1
接下来,将您的存储库推送到bitbucket。
答案 1 :(得分:4)
你可以使用git hard reset git reset documentation 那么你只需要强制推送你的存储库
答案 2 :(得分:4)
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
。
答案 3 :(得分:1)
查看此帖:
How to move HEAD back to a previous location? (Detached head)
它将描述这样做的方法。
但请记住,如果您的服务器不允许强制推送,您将无法将旧提交HEAD推送到服务器,