Che cos'è un buon strumento di unione visiva (gratuito) per Git? (su windows) [chiuso]


154

Una domanda simile era già stata posta, ma per Ubuntu.

Aiuterebbe a sapere se lo strumento è gratuito come nella birra o come in libertà.

Inoltre, gli alti e bassi dello strumento sarebbero belli da sapere.

Risposte:


73

Su Windows, un buon strumento diff / merge a 3 vie rimane kdiff3 ( WinMerge , per ora, è ancora basato su 2 vie, in attesa di WinMerge3)

Vedi " Come si unisce in GIT su Windows? " E questa configurazione .


Aggiornamento 7 anni dopo (agosto 2018): Artur Kędzior menziona nei commenti :

Se voi ragazzi capita di utilizzare Visual Studio (Community Edition è gratuito), provare lo strumento che viene fornito con esso: vsDiffMerge.exe. È davvero fantastico e facile da usare.


1
Pur preferendo BC, vado a controllare questo strumento.
Preet Sangha,

3
@Preet: BC rimane il migliore;) Ma per uno strumento gratuito (multipiattaforma), kdiff3 non è male.
VonC,

ma sicuramente non è poi così buono :) Tendo a trovare più facile usare il mio normale editor di codice.
Warpzit,

1
@Warpzit Sono d'accordo che ci sia un po 'di una curva di apprendimento, ma ora ci sono abituato;)
VonC

1
@ ArturKędzior Grazie. Ho incluso il tuo commento nella risposta per una maggiore visibilità.
VonC,

72

Ho anche usato Meld . È scritto in pitone. Esiste un programma di installazione ufficiale per Windows che funziona bene.

Installalo e quindi impostalo come unità di fusione predefinita.

$ git config --global merge.tool "meld"
$ git config --global mergetool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"

Se si utilizza un client GIT GUI, provare quanto segue (istruzioni per SourceTree, regolare di conseguenza)

  • In SourceTree, vai su Strumenti / Opzioni / Diff
  • In External Diff Tool, scegli Personalizzato
  • Immettere C:\Program Files (x86)\Meld\meld.exenel comando Diff e $LOCAL $REMOTEnegli argomenti
  • In Merge Tool, scegli Personalizzato
  • Immettere C:\Program Files (x86)\Meld\meld.exenel comando Diff e $LOCAL $MERGED $REMOTEnegli argomenti

9
Grazie, Meld è davvero bello :) È davvero chiaro e facile vedere cosa sta succedendo. Grazie per aver pubblicato le istruzioni di installazione. Mi sarei perso senza quelli.
Daniel Tonon,

5
Se stai usando cygwin / babun, sostituisci la seconda opzione con:git config --global mergetool.meld.path "/cygdrive/c/Program Files (x86)/Meld/Meld.exe"
tempestSA

1
+1 per la configurazione git, l'ho usato con P4Merge in basso:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Marco C

@Gordolio, esiste un'interfaccia utente "semplice" o "bassa risoluzione" per la fusione? La grafica è un po ' troppo bella che soffoca totalmente su file enormi.
Pacerier,

1
Ho provato Meld ed è stato bello, con delle belle immagini, ma alla fine è andato per Beyond Compare, con la paga, e sono stato molto felice. Un aspetto negativo di Meld è che i pulsanti non forniscono descrizioni al passaggio del mouse. Un altro: Beyond Compare fornisce pulsanti per passare da una differenza alla successiva. Un altro: Beyond Compare mostra i percorsi dei file nelle barre del titolo della finestra. La fusione era certamente "abbastanza buona", ma preferirei pagare per Beyond Compare. (E non ho alcuna affiliazione con Beyond Compare).
Stephen Hosking,

28

Sto usando P4Merge , è gratuito e multipiattaforma.

P4Merge


1
È ancora gratuito? Non sembra affatto gratuito.
null_pointer

4
Sì, ancora gratis al 100%, ma la loro pagina di download la nasconde un po '.
Daniel Little,

8
È gratuito, come ha detto Daniel, ma quando si esegue il programma di installazione, è necessario disabilitare tutte le opzioni tranne "Visual Merge Tool". In caso contrario, verrà richiesto di connettersi a un server Perforce. Funziona alla grande con SourceTree.
Giovanni

11
Una volta installato, configura come unità di fusione usando:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Segna C

1
Cercare di capire come scaricare la versione di p4merge di Windows usando il tuo link sembra piuttosto un compito. Non riesco a vedere un link per il download chiaro.
Artif3x,

25

Non conosco un buon strumento gratuito ma Winmerge è ok (ish) . Sto usando gli strumenti oltre il confronto dal 1999 e non riesco a valutarlo abbastanza - costa circa 50 USD e questo investimento si è pagato da solo risparmiando tempo più di quanto possa immaginare.

A volte gli strumenti dovrebbero essere pagati se sono molto buoni.


5
+1 per menzionare le opzioni a pagamento.
Verifica il

1
Winmerge è pessimo. L'interfaccia utente rende difficile distinguere la sinistra da destra.
Pacerier,

1
Ho usato WinMerge per anni e penso che sia fantastico. Quindi sono passato a git per il controllo della versione e avevo bisogno di una GUI per il confronto delle versioni. Per prima cosa ho provato Meld e l'ho trovato buono, ma a corto di funzionalità. Beyond Compare ha risolto il problema per me e sono abbastanza felice di pagarlo.
Stephen Hosking,

16
  • TortoiseMerge (parte di ToroiseSVN) è molto meglio di kdiff3 (io uso entrambi e posso confrontare );
  • Anche p4merge (di Perforce) funziona molto bene;
  • Diffuse non è poi così male;
  • Diffmerge di SourceGear ha solo un difetto nella gestione dei file UTF8 senza BOM, rendendolo inutilizzabile per questo caso.

TortoiseGitMerge è in realtà abbastanza buono - non conosco kdiff3, ma non sono mai stato infelice o perso nulla in TortoiseGitMerge, mi permette di fare fusioni sia a due che a tre vie in modo molto rapido e intuitivo.
mindplay.dk,

@ mindplay.dk - TortoiseGitMerge è (per lo più) il buon TortoiseMerge sotto il cofano
Lazy Badger

TortoiseMerge non supporta dir-diff
andrew.rockwell

1

Un'altra opzione gratuita è jmeld: http://keeskuip.home.xs4all.nl/jmeld/

È uno strumento Java e potrebbe quindi essere utilizzato su diverse piattaforme.

Ma (come ha detto Preet nella sua risposta), il libero non è sempre l'opzione migliore. Il miglior strumento diff / merge che abbia mai incontrato è Araxis Merge . L'edizione standard è disponibile per 99 euro che non è poi così tanto.

Forniscono inoltre una documentazione su come integrare Araxis con msysGit.

Se vuoi attenersi a uno strumento gratuito, JMeld si avvicina molto ad Araxis.


Ho sentito molte cose positive anche su Araxis.
Preet Sangha,

-1

Cosa c'è di sbagliato nell'utilizzo di Git per Windows? Dalla vista repository, c'è un'icona del ramo in cui ti trovi (in alto) e se fai clic su gestisci puoi trascinare e rilasciare in un modo molto visivo e conveniente.


7
Penso che la domanda riguardasse la risoluzione dei conflitti di unione.
Leif Gruenwoldt,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.