2024-12-31
查看config.js是否在历史提交中存在
git log --all --full-history -- config.js
将文件从历史提交中删除
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch config.js" --prune-empty --tag-name-filter cat -- --all
如果有必要,重新验证一下:
git add .
git status
看看文件是否存在。不存在,直接push就好了。
rebase
即变基,可以重新修改当次commit。
查看是哪个commit出问题
git log
复制id,比如03d69e5d3
rebase变基:改变这次commit
git rebase -i <COMMIT-ID>~1
注意,加上~1
将第一个pick改成edit
edit 8728dbe67 my second commit message
pick 03d69e5d3 my third commit message
pick 8053f7b27 my fourth commit message
:wq保存。
删除你的token文件,或者加上.gitignore
重新保存
git add .
查看status
git status
完成commit。如果之前没有commit历史,直接跳到这一步即可。
git commit --amend
结束变基
git rebase --continue
push代码
git push
如果rebase操作一通,有可能会失去一些文件。
最好方法是提前保存,如果忘记,试试以下恢复的办法:
git fsck --lost-found