通过此Q & A:How do I remove the old history from a git repository?的建议,我将我的master
分支的历史记录切分为old_stuff
分支。为了节省点击量,该过程涉及将最后一次提交master
嫁接到根提交,实际上不给它父母,然后使用git filter-branch
来使该更改永久。我现在的本地存储库应该是这样,有一个简短的master
分支和一个悠久的历史分支。通过过滤分支进行的Git推送更改
但是,如果我git clone
存储库,那个不应该有父母的提交具有与以前相同的父代。当我做git push -f origin master
时,我结束了一个master
分支,新创建的提交在它的头部,但是之前提交到master
的父代。所以现在我有一个很长的old_stuff
分支和一个master
分支,只要再加一个提交。如果相关,则遥控器在Github上。
如何告诉远程存储库和其他副本修改新提交的父级?
PS:我已阅读关于如何在共享存储库中更改历史记录以打破其他人的副本的警告。我知道有关人员的姓名,并可以要求他们调整,所以我很乐意修改当前案例中的分支历史。
谢谢,这符合我的情况,并且比嫁接和过滤方法少得多。 –