我在分支B.一堆提交之后,几个文件准备/通过分支一个必要的,但很多都没有准备好/必要的。 我想合并只是这些文件,保持适当的git的历史。 后来,当我真正合并,我不希望这些变化的起源有误导线索 - 他们应该正确地引用,他们从来到即使在是那些提交的一部分,其他文件的更改没有合并的提交(但)。 我想这意味着分割提交到该做与不关注这些文件碎片。
此风会失去这些变化的历史和所有提出的解决方案产生很大问题,当我后来想合并B插入A,但部分B的变化已经在那里了。 我想避免这样的解决方案。
在龟,我可以看看日志的单个文件,并选择一些旧版本恢复到。 因此,在原则上,我可以做一个新的分支C,从B,并恢复所有我不想合并回点当B从A支然后,我可以合并C到A.这似乎是正确的文件轨道git的历史,让我合并B插入到一个没有被惊讶的是,一些B中的变更已经在那里了。
但它是痛苦的手动识别,并恢复20个文件,当我刚要合并2.为什么这不是一个常见的单步操作? 如何乌龟的复归作品 - 因为它可以在一个单一的文件进行操作,它必须是子提交,这是我要找的本质特征。 难道扔掉,我从一个新的版本将一老一事实,并令它看上去像是我只是做了一些手动更改即会再与B的回A的最终合并冲突?