【发布时间】:2013-08-07 08:29:14
【问题描述】:
考虑以下工作流程:
- 文件 A 与文件 B 相同
- 文件 B 已修改
- 文件 A 已修改
如何更新文件 B(以编程方式)以包含文件 A 中与步骤 2 中对文件 B 所做的更改不冲突的更改?
我查看了diff 和patch,但我不知道如何使用它们。
举个例子:让步骤1中的文件A和文件B为:
KEYWA
1 3 5
KEYWB
3 3 3
然后在步骤2中将文件B更改为:
KEYWA
1 3 5
KEYWB
3 5 3
最后文件 A 在步骤 3 中更改为:
KEYWA
-- A comment
1 3 5
KEYWB
3 3 3
然后我想更新文件 B 以包含文件 A 中的更改。因此,我希望新文件 B 变为:
KEYWA
-- A comment
1 3 5
KEYWB
3 5 3
【问题讨论】:
-
我不确定您尝试的原因。不过,您似乎正在尝试将 fileA 的修订 2 和同一文件的 rev1 的差异应用于 fileB 的 rev2。这是否简化了问题?
-
是的,我认为这是个好主意。然后我可以为对文件 A 所做的更改生成一个补丁,然后将该补丁应用到文件 B?
标签: linux bash version-control diff patch