首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据目录使用具有合并策略的原始项目更新项目的当前git叉

根据目录使用具有合并策略的原始项目更新项目的当前git叉
EN

Stack Overflow用户
提问于 2020-11-07 05:41:06
回答 1查看 38关注 0票数 2

有一个分支的micropython,它合并了lvgl (一个gui)。

几乎所有的lvgl-related代码都是独立于micropython代码的,另外还有一些重叠。

这些重叠与某些(子)目录有关。

使用lvgl-fork作为"ours“,使用micropython的git作为"theirs",我可以将theirs合并到ours中,覆盖(-X) .松开重叠的部分。

或者我可以在不使用-X的情况下进行合并,产生“数千”:)冲突,这些冲突不是真正的冲突,而是更新,因为大多数micropython代码都没有被lvgl碰过。

由于这是一个很难调试和闪烁的固件,所以对于闪存来说不太健康,所以我不想尝试这么多.:)

除了下面的目录之外,是否有一种"git合并与强制覆盖合并“的方法,如果有冲突的话,我想得到冲突?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-07 07:23:38

这似乎并不是小事一桩,但您可以考虑:

  • a first merge (-X):您得到一次提交,但重叠部分覆盖
  • ,在专用分支之间进行第二次合并,每一次合并代表在合并过程中需要注意的几个子文件夹。

关于后一点,您可以使用git substree split将一个文件夹隔离在它自己的分支中。

<prefix>子树的历史中提取一个新的合成项目历史。

新的历史记录只包括影响<prefix>的提交(包括合并),而每个提交现在都在项目的根目录而不是子目录中有内容。

因此,新创建的历史记录适合作为单独的git存储库导出。

您可以看到在"How do I merge a sub directory in Git?“中使用的方法,其中有两个分支,但只希望将dir-1的历史从branch-a合并到branch-b

这就是我前面提到的第二步你想要做的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64724810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档