Bir PHP kodu Diff itibaren, Sınıflar ve Fonksiyonlar değişti hangi söyleyebilir?

4 Cevap php

Arka plan:

PHPDoc ( http://www.phpdoc.org/ ) is a brilliant tool for extracting html documentation of your classes or methods from comments in your files. Adding PHPDoc comments also has other advantages - if you use an IDE like Zend or Netbeans, it will use the PHPDocs to show you autocompletion tips.

Most Issue trackers have a feature where you can commit into your version control system with a special comment, and it will automatically link that commit to that issue.

So here's what I want in a system: I commit some code with a special comment, my issue tracker links it to an issue. It then looks at the commit and works out what Methods and Classes I have changed. It then says "If you are looking for documentation around this issue, try these bits of PHPDoc: ClassX.FunctionY, ClassZ.VariableP". It automatically points users to documentation that might be relevant. I think this would be a great feature.

Soru:

So the piece that is missing is something to take a PHP code diff, and work out what classes and methods have changed. Anyone got any pointers on some code that can do that?

Thanks in advance, James

4 Cevap

http://uk3.php.net/reflection

PHP5 bana fark karşı maç gerekir hat numaralarını vererek dahil tüm yöntemleri, ayrı bir sınıf almak ve incelemek için yöntemleri vardır. Elimde başlayabilirsiniz bu kullanarak benim kendi çözüm rulo.

Eğer subversion kullanıyorsanız, size projede değişti tüm dosyaların bir diff görebilirsiniz. Ve onlar farklı nasıl görmek.

Entegre yıkılma desteği ile yazılım Trac. gibi, vardır

Here's a picture of TracDiff

Bunu, sadece PHP motoru yok gibi PHP kaynak metin ayrıştırmak, derinden PHP yapısını anlayan bir aracı gerekir.

Bizim "Akıllı Tereddüt" kimse size özgün ve değişen versiyonu olduğunu biliyorum PHP dosyalarının çiftlerini karşılaştırmak sağlayan, bunu yapar. Bu FBDTÖ karşılaştırır ve minimal düzenlemeler başka içine bir harita bulur. Eski ve yeni yöntemler tüm benzer ise, bu keşfetmek ve bir diğer almak üzere düzenlenen nasıl anlatacağım. Bkz http://www.semdesigns.com/Products/SmartDifferencer/index.html

Eğer modiefied dosyaları alır ve ne istediğinizi yapmak için onlara bakar sonrası bir taahhüt komut dosyası yazabilirsiniz