要从 git 中删除最后一次提交,您可以简单地运行
git reset --hard HEAD^
如果要从顶部删除多个提交,则可以运行
git reset --hard HEAD~2
删除最后两个提交。您可以增加数量以删除更多提交。
更多信息在这里。
此处的 Git 教程提供了有关如何清除存储库的帮助:
您想从历史记录中删除该文件并将其添加到 .gitignore 以确保它不会意外重新提交。对于我们的示例,我们将从 GitHub gem 存储库中删除 Rakefile。
git clone https://github.com/defunkt/github-gem.git
cd github-gem
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch Rakefile' \
--prune-empty --tag-name-filter cat -- --all
现在我们已经从历史记录中删除了该文件,让我们确保我们不会再次意外提交它。
echo "Rakefile" >> .gitignore
git add .gitignore
git commit -m "Add Rakefile to .gitignore"
如果您对存储库的状态感到满意,则需要强制推送更改以覆盖远程存储库。
git push origin master --force