Git在第一次提交时为远程分支恢复提交已删除的分支

时间:2016-08-03 02:13:24

标签: git bitbucket

提交被推送到分支random-tests,其中包含一些敏感信息。该分支不会再被使用,所以我只是强制从远程和本地删除,认为这将清除该分支中的任何提交。我错了。即使分支本身已经消失,提交仍然存在。

这是从master分割出来之前对该分支的第一次提交。由于分支被删除并且是该分支上的第一个提交,如何在不影响其他任何内容的情况下删除有问题的提交?

1 个答案:

答案 0 :(得分:0)

如果您仍然看到这些提交,那么它们一定不能只在ListUtils.emptyIfNull(List<T> list)分支上。无论如何,这是一个选项:

说这是您最近提交的列表:

  • 错误提交
  • 良好的提交
  • 良好的提交

要从Git历史记录中删除“错误提交”,您可以运行random-tests,这会将树重置为一次提交,并忘记曾经存在的“错误提交”。

为了更加谨慎地执行此操作,您可以改为运行git reset --hard HEAD~1,执行git reset --soft HEAD~1以确保正确的文件未分级,然后运行git status以重置为下一次提交,这将是最近的“良好提交”。

可能不是那里最好的解决方案,但它应该有效。希望有帮助&amp;有道理!

更新: 因为你已经修改了Git历史记录,所以当你将它推送到你的遥控器时会遇到问题,所以你必须做git reset --hard来强迫它。