Git 如何在bitbucket上完全删除旧提交

Git 如何在bitbucket上完全删除旧提交,git,bitbucket,Git,Bitbucket,非常奇怪的故事,但前几天我和我的团队一起编写代码,在玩的时候,我在IDE中输入了一些非常尴尬的东西。我忘了删除那些东西,不小心我犯了错,推了。我使用git-rebase-I HEAD~3从bitbucket中删除了提交,并将提交标记为“drop”,但每次有人推送某个内容时,它都会再次显示在bitbucket的提交选项卡中,并显示在图表上。有没有一种方法可以永久删除提交,而没有人可以恢复它,甚至看不到它在一开始就存在?我不想在老板面前受辱 git rebase-i HEAD~3并将提交标记为“dr

非常奇怪的故事,但前几天我和我的团队一起编写代码,在玩的时候,我在IDE中输入了一些非常尴尬的东西。我忘了删除那些东西,不小心我犯了错,推了。我使用git-rebase-I HEAD~3从bitbucket中删除了提交,并将提交标记为“drop”,但每次有人推送某个内容时,它都会再次显示在bitbucket的提交选项卡中,并显示在图表上。有没有一种方法可以永久删除提交,而没有人可以恢复它,甚至看不到它在一开始就存在?我不想在老板面前受辱

git rebase-i HEAD~3并将提交标记为“drop”

这些都是本地操作:您仍然需要“
git push--force
”,以便远程BitBucket回购将其历史记录替换为修改后的历史记录

您需要要求您的同事将他们自己的本地分支重新设置为新的历史记录

 cd /path/to/colleague/repo
 git checkout master # assuming they are working on master
 git stash
 git fetch
 git reset --hard origin/master
 git stash pop

(为了安全起见,他们最好复制一份正在进行的工作)

Errare humanum est。删除这些内容并重新提交以修复它。如果被问到,就承认吧。这就是全部。现在,可以从一个或多个分支或标记访问不需要的提交。如果您想将其从所有这些引用中删除,那么更改已发布给同事的提交历史记录可能会犯更大的错误。这将是一场灾难。别紧张。毕竟,几乎所有的bug都是由程序员创建的,不是吗?