diff -r:限制递归?

Ste*_* Lu 3 filesystems bash shell diff posix

有没有办法指定递归差异的最大递归级别diff -r(比较两个目录)?

我想做的是比较 github 上的两个项目(一个是从另一个项目分支出来的)。我现在怀疑其中一个可能有一个远程分支链接到另一个,这将让我与 进行比较git,但是这个问题仍然适用于一般文件系统。

编辑更新:这个答案解决了我如何git帮助我进行比较:/sf/answers/361398761/

发生的事情是我已经克隆了两个存储库,并且我正在调用diff -r repoA repoB它,它报告了.git/目录中的差异,这是可以预料的,但我对这些目录中的差异不感兴趣。

在这种情况下,最好只显示目录中第一级文件之间的差异,因为这个特定项目没有子目录。如果有人有关于如何比较两个目录同时排除特定文件夹(.git/我的例子中的目录)的提示,那也很棒!

Dar*_*tle 5

  1. 我不知道有什么方法可以限制递归的深度diff -r

  2. -x PAT您可以排除与带有 或 的模式匹配的文件--exclude=PAT。所以

    diff -r -x .git repoA repoB
    
    Run Code Online (Sandbox Code Playgroud)

    如果您确实想要递归,将会很有用。

  3. 就您而言,只需省略即可,-r因为您不希望它递归。

    diff repoA repoB
    
    Run Code Online (Sandbox Code Playgroud)

    已经做了你想做的事。