我半知道这个问题可能已经被问到了,但我不熟悉这个术语,我需要一个非常容易理解的答案,或许对我的特殊需求有点过于具体。
我忘记删除目标文件,然后执行了git add -A
。然后我扫描了几个man
页并使用了某种交互模式,并在一些尝试后删除了目标文件。
然后我执行了git push origin master
将文件“上传”到github.com上的远程服务器。它变成了三个提交。
所以我的最后四个提交包括:
基本上我希望在0之后有一个提交,其中的diff应显示所有更改,除了那些该死的目标文件的任何证据。如果有可能,我该如何做?
答案 0 :(得分:2)
在本地,使用git rebase --interactive
或您选择的git工具来获取您喜欢的历史记录。然后使用git push origin master -f
强制您的master版本进入github存储库。
请注意,修改已发布的历史记录意味着您必须找到已经撤消修订后的更改并指示他们获取新更改的所有人,并且如果他们已经在他们之上完成了工作,那么就要重新安排旧更改