代码之家  ›  专栏  ›  技术社区  ›  pkaeding

我可以用“diff-r”来告诉我其中一棵树中的文件在另一棵树中发生了更改吗?

  •  2
  • pkaeding  · 技术社区  · 17 年前

    我想生成一个目录树中的文件摘要,另一个目录树中的文件也在第二个目录树中修改过。

    用例是这样的:我有一个产品发行版,其中包含Web内容文件。然后将这些文件导入到特定于客户机的项目中,并可以从中进行修改。现在,我想查看自导入prduct以来特定于客户端的项目中已更改的所有文件,以便更新产品并保留特定于客户端的更改。

    我在想这样的事情可能奏效

    diff -r productDistribution/WebContent clientProject/WebContent
    

    但是,在客户特定的项目中有许多文件不在产品分发中,我在这个过程中不关心这些文件。本质上,我想要一个“外部连接”,用SQL的说法。

    理想情况下,我希望能够创建一个包含所有客户端特定更改的补丁。然后,我就可以覆盖新的产品文件,并应用补丁,我应该都设置好了。

    有什么想法吗?

    1 回复  |  直到 17 年前
        1
  •  2
  •   Nathan Kitchen    17 年前

    默认情况下,diff只为其中一棵树中的每个文件打印一行,因此很容易过滤掉这些文件:

    diff -r productDistribution/WebContent clientProject/WebContent | \
        grep -v 'Only in clientProject'
    
    推荐文章