我最近开始了一项新工作,我已经接管了现有系统的开发工作。系统(PHP站点,如果重要)设置了三个实例。
这似乎是一件合理的事情(他们没有SVN服务器设置)。但是现在我已经有几个星期了,我注意到所有三个站点的代码(和数据库模式)都不同。我希望dev和live之间存在差异,但live具有开发者没有的功能。
我已经运行CLOC,我正在查看大约180个修改过的文件和110个不同版本之间的新文件。是否有任何软件或更简单的方法来比较所有版本的代码,而不仅仅是按文件执行差异文件?
答案 0 :(得分:1)
meld
非常适合以深入分析的方式递归地比较整个文件夹(和文件)。
答案 1 :(得分:1)
Blatant plug:如果你有兴趣将所有三个网站相互分开(而不是一次将它们分成两个),你可能会对my difdef
utility感兴趣。它可以生成N个目录{la diff -r -D
的合并,但与传统的diff
不同,它适用于N> 2以及N = 2。 (与diff3
不同,它不假设版本之间存在任何特定的谱系关系。)
E.g。你可以做到
difdef -r -DSITE={LIVE,TEST,DEV} {live,test,dev} -o merged
grep -lr 'SITE==' merged | xargs $EDITOR
打开任何两个版本之间不同的每个文件的编辑器窗口。
difdef
不有比传统diff
实用程序更好的用户界面,但确实具有超过2的差异能力同时版本。开源,C ++,MIT许可证。