关于git分支的问题,怎么操作才能达到这种效果

我这里一个repo,需要用到另一个repo的一部分代码。另一个repo是随时更新的,所以我这里remote加了那个repo,随时从那个分支把代码pull过来。
这两个repo的内容是独立的,我不关心另一个repo的commit树,想全部给整成一条线。现在问题就来了,merge的话会留下一堆冗余的commit,rebase的话,好像我自己这里的commit就没了,只剩下它的了。我应该怎么做,才能达到只留我的commit不留他的的效果?
刚学git,懂得比较少,请多指教了。

4个回答

你每次需要merge的时候,把remote的改动pull拉下来,然后可以用git merge --squash来合并merge到你的分支,这样就会只生成一个merge点。你可以添加comments表示这是一次合入改动。这样你的commit树就比较清晰了

RibomBalt
RibomBalt 谢谢,这个应该是我想要的
3 年多之前 回复

你在你自己的repo项目先建一个分支 test,把它的repo更新到这个分支上。然后从这个分支 test 上 cherry-pick 你需要的commit到你项目的主线上就可以了.
git cherry-pick [commit-Id]:挑拣其它分支上某些提交到主分支。这命令你可以百度,很多解释的

RibomBalt
RibomBalt 谢谢
3 年多之前 回复
RibomBalt
RibomBalt 我知道怎么checkout,我是想问怎么清理commit树,太乱了
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐