我问这个问题是因为我正在研究Pro Git书,有一章“重写历史”,解释了如何更改最后一次提交$ git commit --amend,更改多个提交消息$ git rebase -i HEAD~ 3 、使用$ git filter-branch --tree-filter删除所有提交中的特定文件或文件夹。
我的问题是:这本书没有提到通过沿着所有提交历史进行多次签出来完成这项工作的可能性。所以我移动我的 HEAD,逐个提交,然后用$ git commit --amend一项一项地更改这个特定的提交。
我知道这真的(真的!)就花费的时间而言非常昂贵,但是它真的有可能(即它有效)吗?
如果是,在什么情况下这可能有用?