如何删除GitHub提交及其历史记录?

时间:2017-07-07 18:58:54

标签: git github version-control

我的朋友制作了一个配置文件,拿着我们的apikey / token / secrets,以及一个.gitignore来忽略所述文件。有人意外地推送到主分支,配置文件保存为另一个名称,现在正在显示。

我想知道是否有办法删除该提交以及该提交的历史记录。

我已经看到了这个(下面),我知道这将删除提交并重新推送所有内容。 它仍会通过历史记录/更改显示配置信息:

git reset --hard hash# 

git push -f origin branch

1 个答案:

答案 0 :(得分:2)

git-filter-branch可以为您提供帮助,如下所示:

"0111111"替换为要删除的配置文件的路径,而不仅仅是文件名。

PATH-TO-YOUR-CONFIG-FILE

将您的配置文件添加到git filter-branch --force --index-filter \ 'git rm --cached --ignore-unmatch PATH-TO-YOUR-CONFIG-FILE' \ --prune-empty --tag-name-filter cat -- --all ,以确保您不会意外地再次提交,提交并推送它,遵循以下命令:

.gitignore