2009-04-30 20 views
1

背景:从PHP代码差异,你能告诉哪些类和函数已经改变?

PHPDoc的(http://www.phpdoc.org/)可以在你的 文件中提取你的类或评论方法 HTML文档辉煌的工具。添加PHPDoc注释还具有其他优点 - 如果您使用的是像Zend或Netbeans这样的IDE,它将使用PHPDocs向您显示 自动完成提示。

大多数问题跟踪器都有一个功能,您可以在其中通过特殊注释将其提交到您的 版本控制系统中,并且 会自动将该提交链接到该问题。

所以这里是我想要的一个系统:我提交了一些特殊的代码 评论,我的问题跟踪链接到一个问题。然后它会查看 提交并确定我已更改的方法和类。然后 说:“如果您正在寻找有关此问题的文档,请尝试 这些位PHPDoc:ClassX.FunctionY,ClassZ.VariableP”。它 自动将用户指向可能相关的文档。我认为这将是一个很棒的功能。

问:

这样缺少一块东西拿PHP代码DIFF和 工作出了什么类和方法发生了变化。任何人都可以得到任何 指针的一些代码,可以做到这一点?

由于提前, 詹姆斯

+0

你在寻找的东西预建的是,或者对如何建立它自己的技巧? – Josh 2009-05-06 22:58:15

+0

Josh - 不是,但最好是预构建的 – James 2009-05-13 11:47:36

回答

0

http://uk3.php.net/reflection

PHP5有方法可以采取一个类分开并检查所有的方法,包括给我我需要匹配对差异的行号。使用这个我可以开始手动推出我自己的解决方案。这确实

1

如果您正在使用subversion,你可以看到所有已在该项目更改的文件的差异。看看他们有什么不同。

有集成颠覆支持​​软件,如Trac.

Here's a picture of TracDiff

+0

不幸的是,知道文件已经改变与知道哪些类和函数已经改变是不一样的。每个文件中可能有多个类和函数。你必须解析PHP,这不是微不足道的,因此我的问题。对不起,但是谢谢你的时间。 – James 2009-05-13 11:50:28

1

你需要一个工具,了解PHP的结构深刻,那就是可以解析就像PHP引擎在PHP源文本。

我们的“智能差异”能够做到这一点,使您能够比较一对PHP文件,您知道它们是原始版本和更改版本。它比较AST,并找到最小的编辑映射到另一个。如果新旧方法完全相同,它会发现并告诉你如何编辑一个以获得另一个。见http://www.semdesigns.com/Products/SmartDifferencer/index.html

+0

这听起来非常出色,但我需要它来识别类和方法结构,目前尚不清楚它是否会执行此操作。我想这是他们可以轻松提供的东西。 但总的想法听起来像一个辉煌的想法:作为一个程序员,我讨厌他们谈论的一些事情。有时候,我甚至会考虑将我的源代码格式化为纯粹的差异化代码。谢谢。 – James 2009-06-25 09:19:23

0

你可以写一个帖子提交接收文件modiefied并展望他们做你想做的脚本

相关问题