在guide之后,我通过删除历史上的一些繁重文件来缩减我们的项目存储库。这意味着git历史记录已更改。但现在的问题是我的其他团队成员如何在不丢失他们在当前不在远程的分支机构上所做的更改而且不会删除已删除的历史记录的情况下,无法获得我们回购的新缩小版本。
作者建议克隆或变基:
拥有存储库本地克隆的任何其他人都需要使用git rebase,或者创建一个新的克隆...
新的克隆意味着丢弃任何团队成员在本地所做的所有更改。因此,rebase似乎是更好的选择。但我们怎么能去做呢?
我正在考虑这样的事情:(假设master是新功能分支的基本分支,开发人员机器上的本地分支,其上有新工作,master已经受到历史重写的影响):
$ git checkout master
$ git fetch origin
$ git pull --rebase
$ git checkout new-feature
$ git rebase master
确认所有工作顺利
$ git push origin