2009-11-25 18 views
13

Sto cercando uno strumento di diff che mi permetterà di confrontare solo una sotto-sezione di un file con una sezione di un altro file, o anche di se stesso. Preferibilmente basato sull'eclisse ma prenderà tutti i suggerimenti.strumento diff che può confrontare sotto-sezioni di file

Sì, lo so che posso copiare le due sezioni in file diversi e confrontare quelli, ma che è molto noioso quando si sta cercando di fare una grande quantità di refactoring.

Fondamentalmente sto cercando di rimuovere il maggior numero possibile di codice duplicato da una base di codice che è affetto da una grande quantità di "eredità" di ctrl-V ;-) Tuttavia, le parti incollate si sono evolute a poco a poco nel tempo.

+0

+1 da parte mia - Prendo sempre 3 o 4 righe di * qualcosa * (un codice di errore, qualche xml, un GUID ecc.) E sto provando a confrontarlo con qualcos'altro. Metterli in 2 file funziona, ma è un dolore. – Justin

+1

grazie per tutti i consigli di cercatori babbeo, li ho verificato. Ho trovato un plugin che utilizza simian in eclissi. il problema non è realmente trovare il creduloni. So già dove sono in realtà la maggior parte dei maledetti. È il punto in cui è necessario capire come risolvere i dupes che sono dove sono attualmente ... ed è per questo che ho bisogno di diffare le sezioni direttamente. – EvilPuppetMaster

+0

@EvilPuppetMaster: Sì, non è la constatazione, ma la diffing che è la chiave. Ho chiesto come [domanda simile] (http://stackoverflow.com/questions/2818082/how-to-diff-two-regions-of-the-same-file-in-eclipse). Andando a indagare su Atomiq. – thoni56

risposta

1

CheckStyle è ben integrato con Eclipse e farà il lavoro. Sarà notifica a voi e l'errore/avviso se il codice è duplicato, Quante volte ... ecc ...

http://eclipse-cs.sourceforge.net/

KDiff3 sarebbe l'altra scelta. Non Eclipse integrato, ma uno strumento gratuito e multipiattaforma gratuito per la fusione, il confronto di file, ecc.

0

Vedere SD CloneDR, uno strumento che rileva i cloni esatti e quasi mancati in base alla sintassi della lingua, per un gran numero di lingue (Java, C#, PHP, C++, C, COBOL, Ada, ...). Un API Eclipse viene preparata in questo momento, ed è probabile a disposizione 1 ° gennaio 2010.

3

Provare a utilizzare Diffuse. È sufficiente incollare le due sottosezioni che si desidera confrontare in riquadri separati e premere CTRL-L per riallinearle. È anche possibile caricare i file e regolare manualmente l'allineamento per abbinare le sottosezioni di interesse.

2

Due due strumenti che ho utilizzato per estrarre il codice duplicato sono Simian e CopyPasteKiller. Entrambi sono utili, anche se IMO CopyPasteKiller è un po 'più facile da iniziare. Sembra che ci sia un Eclipse plugin per Simian, anche se non l'ho usato da solo.

+0

CopyPasteKiller è stato rinominato in Atomiq (http://www.getatomiq.com) – viggity

4

Ho giocato con Atomiq, che trova duplicati in un singolo file. Finora sembra essere uno strumento decente.

+1

Atomiq ha un sito Web ufficiale che offre molte più informazioni: http://www.getatomiq.com – viggity

Problemi correlati