Apa alat penggabungan visual yang baik (gratis) untuk Git? (pada windows) [ditutup]


154

Sebuah pertanyaan serupa sudah bertanya, tapi untuk Ubuntu.

Akan membantu untuk mengetahui apakah alat itu gratis seperti bir atau kebebasan.

Juga, naik turunnya alat ini akan menyenangkan untuk diketahui.

Jawaban:


73

Di Windows, alat diff / merge 3-arah yang bagus tetap kdiff3 ( WinMerge , untuk saat ini, masih berbasis 2-arah, tertunda WinMerge3)

Lihat " Bagaimana Anda menggabungkan GIT di Windows? " Dan konfigurasi ini .


Perbarui 7 tahun kemudian (Agustus 2018): Artur Kędzior menyebutkan dalam komentar :

Jika kalian kebetulan menggunakan Visual Studio (Community Edition gratis), cobalah alat yang dikirimkan dengan itu: vsDiffMerge.exe. Ini sangat mengagumkan dan mudah digunakan.


1
Meskipun mendukung BC, saya akan memeriksa alat ini.
Preet Sangha

3
@ Salam: BC tetap yang terbaik;) Tetapi untuk alat gratis (multi-platform saat itu), kdiff3 tidak buruk.
VonC

tetapi defintly juga tidak baik :) Saya cenderung merasa lebih mudah untuk menggunakan editor kode biasa saya.
Warpzit

1
@Warpzit Saya setuju ada sedikit kurva belajar, tapi saya sudah terbiasa sekarang;)
VonC

1
@ ArturKędzior Terima kasih. Saya telah memasukkan komentar Anda dalam jawaban untuk lebih banyak visibilitas.
VonC

72

Saya juga menggunakan Meld . Itu ditulis dengan python. Ada penginstal resmi untuk Windows yang berfungsi dengan baik.

Instal dan setel sebagai mergetool default Anda.

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

Jika menggunakan klien GUI GIT, coba yang berikut (instruksi untuk SourceTree, sesuaikan sesuai)

  • Di SourceTree, pergi ke Alat / Opsi / Diff
  • Di External Diff Tool, pilih Kustom
  • Masukkan C:\Program Files (x86)\Meld\meld.exedi Perintah Diff dan $LOCAL $REMOTEdi Argumen
  • Di Merge Tool, pilih Kustom
  • Masukkan C:\Program Files (x86)\Meld\meld.exedi Perintah Diff dan $LOCAL $MERGED $REMOTEdi Argumen

9
Terima kasih, Meld sangat baik :) Sangat jelas dan mudah untuk melihat apa yang terjadi. Terima kasih telah mengirim instruksi pemasangan. Saya akan tersesat tanpa itu.
Daniel Tonon

5
Jika Anda menggunakan cygwin / babun, ganti opsi 2 dengan:git config --global mergetool.meld.path "/cygdrive/c/Program Files (x86)/Meld/Meld.exe"
tempestSA

1
+1 untuk konfigurasi git, saya menggunakannya dengan P4Merge di bawah ini:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Mark C

@Gordolio, Apakah ada UI "sederhana" atau "beresolusi rendah" untuk berbaur? Grafiknya agak terlalu indah yang benar-benar tercekik pada file besar.
Pacerier

1
Saya mencoba Meld dan itu bagus, dengan beberapa visual yang bagus, tetapi pada akhirnya pergi untuk Beyond Compare, dengan gaji, dan sangat bahagia. Satu minus dari Meld adalah bahwa tombol tidak memberikan deskripsi mouseover. Lainnya - Beyond Compare menyediakan tombol untuk berpindah dari satu perbedaan ke yang berikutnya. Lain - Beyond Compare menunjukkan jalur file di bilah judul jendela. Meld tentu saja "Cukup baik", tapi aku lebih suka membayar untuk Beyond Compare. (Dan saya tidak memiliki afiliasi dengan Beyond Compare).
Stephen Hosking

28

Saya telah menggunakan P4Merge , gratis dan lintas platform.

P4Merge


1
Apakah ini masih gratis? Tampaknya tidak gratis sama sekali.
null_pointer

4
Ya, masih 100% gratis, tetapi halaman unduhan mereka menyembunyikannya sedikit.
Daniel Little

8
Ini gratis seperti kata Daniel tetapi ketika Anda menjalankan installer, Anda harus menonaktifkan semua opsi kecuali "Visual Gabung Alat". Jika tidak, itu akan meminta Anda untuk terhubung ke server Perforce. Bekerja sangat baik dengan SourceTree.
John

11
Setelah terinstal, konfigurasikan sebagai mergetool menggunakan:git config --global merge.tool "p4merge" && git config --global mergetool.p4merge.path "C:\Program Files\Perforce\p4merge.exe"
Mark C

1
Mencoba mencari cara untuk mengunduh p4merge versi windows menggunakan tautan Anda sepertinya cukup sulit. Tidak ada tautan unduhan yang jelas yang dapat saya lihat.
Artif3x

25

Saya tidak tahu alat gratis yang bagus tapi winmerge ok (ish) . Saya telah menggunakan alat yang luar biasa sejak 1999 dan tidak dapat menilai cukup - biayanya sekitar 50 USD dan investasi ini telah membayar sendiri penghematan waktu lebih dari yang saya bayangkan.

Kadang-kadang alat harus dibayar jika sangat bagus.


5
+1 untuk menyebutkan opsi berbayar.
eckes

1
winmerge buruk. UI menyulitkan untuk membedakan kiri dari kanan.
Pacerier

1
Saya menggunakan WinMerge selama bertahun-tahun dan berpikir itu hebat. Kemudian saya beralih ke git untuk kontrol versi dan membutuhkan GUI untuk perbandingan versi. Pertama saya mencoba Meld dan merasa bagus, tetapi kekurangan fitur. Beyond Compare telah memecahkannya untuk saya, dan saya cukup senang membayarnya.
Stephen Hosking

16
  • TortoiseMerge (bagian dari ToroiseSVN) jauh lebih baik daripada kdiff3 (saya menggunakan keduanya dan dapat membandingkan );
  • p4merge (dari Perforce) bekerja dengan sangat baik;
  • Diffuse tidak terlalu buruk;
  • Diffmerge dari SourceGear hanya memiliki satu kelemahan dalam menangani file-file UTF8 tanpa BOM, membuat tidak dapat digunakan untuk kasus ini.

TortoiseGitMerge sebenarnya cukup bagus - Saya tidak tahu kdiff3, tetapi belum pernah merasa tidak bahagia atau melewatkan apa pun di TortoiseGitMerge, ini memungkinkan saya melakukan penggabungan dua dan tiga arah dengan sangat cepat dan intuitif.
mindplay.dk

@ mindplay.dk - TortoiseGitMerge (kebanyakan) bagus TortoiseMerge di bawah tenda
Lazy Badger

TortoiseMerge tidak mendukung dir-diff
andrew.rockwell

1

Opsi gratis lainnya adalah jmeld: http://keeskuip.home.xs4all.nl/jmeld/

Ini adalah alat java dan karenanya dapat digunakan pada beberapa platform.

Tetapi (seperti yang disebutkan Preet dalam jawabannya), gratis tidak selalu merupakan pilihan terbaik. Alat diff / merge terbaik yang pernah saya temui adalah Araxis Merge . Edisi standar tersedia untuk 99 EUR yang tidak terlalu banyak.

Mereka juga menyediakan dokumentasi untuk bagaimana mengintegrasikan Araxis dengan msysGit.

Jika Anda ingin tetap menggunakan alat gratis, JMeld cukup dekat dengan Araxis.


Saya telah mendengar banyak hal baik tentang Araxis juga.
Preet Sangha

-1

Apa yang salah dengan menggunakan Git Untuk Windows? Dari tampilan repo, ada ikon cabang tempat Anda berada (di atas), dan jika Anda mengklik kelola, Anda dapat menarik & melepas dengan cara yang sangat visual dan nyaman.


7
Saya pikir pertanyaannya adalah tentang menyelesaikan konflik gabungan.
Leif Gruenwoldt
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.