2010-03-17 14 views
16

C'è un modo semplice per confrontare l'albero dei file di un vecchio commit git con l'albero dei file di lavoro, in combinazione?git-difftool: albero di file completo confrontare usando meld?

git-difftool fa qualcosa di molto simile, ma io non voglio che faccia alcuna differenza; il punto è che lo strumento che sta chiamando può fornire un'interfaccia migliore per questo.

+1

si veda anche [versione più generale] (http://stackoverflow.com/questions/1220309/git-difftool-open-all-diff-files-immediately-not- in-serial) di questa domanda –

risposta

9

Ho provato questo su una versione recente di fusione e ora è integrato. Puoi usarlo con la combinazione percorso directory > quindi "combinare". funziona per la directory corrente. Puoi eseguire il checkout di una versione git co [versione] quindi git reset [versione]^e quindi eseguire "fusione". per confrontare qualsiasi versione con la sua versione precedente.

6

Ho trovato anche questo problema fastidioso, quindi ho creato una combinazione di git che consente un modo più comodo di diffondere commit arbitrari contro l'albero di lavoro o l'area di staging. Puoi trovarlo allo https://github.com/wmanley/git-meld.

+2

Qual è la differenza tra git-meld e https://github.com/thenigan/git-diffall? Ho provato entrambi e ho avuto l'impressione che la funzionalità fosse identica. – kynan

+0

@kynan: Non git-meld ti consente di usare l'interfaccia utente di directory di meld per visualizzare le modifiche in un commit, mentre git-diffall apre tutte le diff (nell'interfaccia utente diff)? – idbrii

+0

@pydave afaics controllano entrambi gli alberi delle 2 revisioni per diff alle directory temporanee e quindi lanciano una directory diff su quelle - nessuna differenza lì. – kynan

23

Con git > 1.7.11, il comando git difftool ora supporta diverse directory complete utilizzando il comando --dir-diff. Questo può essere utilizzato insieme a meld:

$ git difftool --tool=meld --dir-diff [commit-to-diff-against] 
+0

Questa dovrebbe essere la risposta accettata. – melloc

Problemi correlati