1. 问题
在 remote 提交时,增加了一个文件,但这个文件不应该被提交,想删除文件,同时已经有了多次在这提交后的新提交,如何操作?
原有链
a==>b==>c==>d
^
|
有问题的提交
要做到
a==>c==>d
2. 操作
a==>b==>c==>d
方法一:(推荐)
git rebase -i a
修改 b 为 drop
git reflog expire --expire-unreachable=now --all
git gc --prune=now
方法二:
git checkout -b tmp
git checkout tmp
git format-patch b..d
git checkout master
git reset --hard a
git checkout master
git apply *.patch
git add . && git commit
git push -f
git reflog expire --expire-unreachable=now --all
git gc --prune=now