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.