我的朋友制作了一个配置文件,拿着我们的apikey / token / secrets,以及一个.gitignore
来忽略所述文件。有人意外地推送到主分支,配置文件保存为另一个名称,现在正在显示。
我想知道是否有办法删除该提交以及该提交的历史记录。
我已经看到了这个(下面),我知道这将删除提交并重新推送所有内容。 但它仍会通过历史记录/更改显示配置信息:
git reset --hard hash#
git push -f origin branch
答案 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