作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图将提交的一部分从默认分支(不是所有文件和其他文件的部分) merge 到一个命名分支。我试过 graft
,但它只需要整个提交,而没有给我选择的机会。这将如何完成?
例子:
A---B---C---D
\
-E---(G)
G
还不存在。让我们说
C
和
D
每个添加了 5 个文件并修改了 5 个文件。我要
G
在
C
添加 5 个文件中的 2 个, 对其中一个文件的所有修改和对另一个文件的一次修改。理想情况下,我希望它也有来自
D
的类似内容。 .
graft to local...
,我得到的只是整个
C
变更集。与
merge with local...
相同
最佳答案
merge 的单位是一个完整的变更集,所以 C 和 D 应该以更小的部分提交。您现在可以 merge 整个内容并还原一些文件,但这将导致您以后无法 merge 其余文件 - 它们已被视为已 merge 。
我要做的是创建一个与 C-D 平行的分支,在您的示例中以 B 为根,其中包含 C 和 D 中更改的副本,但将它们拆分为连贯的部分。然后您可以从中 merge 整个变更集,并关闭(或什至删除)原始 C-D 分支。
C---D
/
A---B--C1--D1--C2--D2 (equivalent to C--D)
\
E---(G?)
rebase
),这样您就可以简单地将 D1 与乙:
C---D
/
A---B--C1--D1--C2--D2
\ \
E------G
graft
可能会少很多麻烦(或
transplant
)复制不允许单独 merge 的更改。例如,在下面你仍然可以 merge C1,但是你需要一个 D1 的副本(标记为 D1'),因为没有办法 merge 它而不将 C2 与它一起拉。
C---D
/
A---B--C1--C2--D1--D2
\ \
E--G1--D1'
关于merge - 如何只 merge 一些文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17054152/
我是一名优秀的程序员,十分优秀!