- Alat untuk menyelesaikan Git Merge Conflict, yang memahami pohon di dalam file untuk menyelaraskan kebutuhan dari kedua sisi
- Bahasa baru dapat ditambahkan secara deklaratif
- Dapat dikonfigurasi agar menggunakan Mergiraf sebagai pengganti algoritme merge bawaan Git
- Meningkatkan perintah Git seperti
merge, revert, rebase, cherrypick
- Atau, Anda dapat mempertahankan perilaku asli Git dan memanggil Mergiraf secara manual saat konflik terjadi.
Tujuan Mergiraf
- Tidak menyembunyikan konflik
- Heuristik merge yang memahami sintaks kadang dapat terlalu optimistis dan menganggap konflik telah terselesaikan
- Dalam kasus yang meragukan, Mergiraf menjaga kondisi terbaik dengan membiarkan penanda konflik tetap ada di file
- Jika semua konflik berhasil diselesaikan sendiri, Mergiraf menyarankan untuk meninjau hasil mediasi melalui perintah
mergiraf review
- Jika hasil penggabungan tampak salah, Anda dapat melaporkannya dengan mudah melalui
mergiraf report
- Cukup cepat untuk penggunaan interaktif
- Jerapah dapat berlari hingga 60 kilometer per jam
- Penggabungan versi bercabang dari sebuah file sering terjadi secara rutin tanpa disadari selama tidak ada konflik
- Mergiraf berupaya tetap cepat agar tidak mengganggu alur kerja
- Terbuka terhadap metode lain
- Dalam banyak kasus, merge berbasis baris bekerja dengan baik dan tidak memerlukan manipulasi pohon
- Jika merge berbasis baris tidak menimbulkan konflik, Mergiraf akan mengembalikan hasil merge tersebut (sangat cepat)
- Jika merge berbasis baris menghasilkan kunci duplikat, Mergiraf melakukan sedikit pekerjaan tambahan untuk menyelesaikan masalah atau menyorotinya dengan penanda konflik
2 komentar
Jerapah ternyata bisa berlari dengan kecepatan 60 kilometer per jam.
Komentar Hacker News
Sedang mengerjakan hal yang mirip dengan SemanticDiff, dan mengalami masalah saat menggunakan tree-sitter dan GumTree
Bagian arsitektur Mergiraf menjelaskan secara mendalam cara kerja alat yang kompleks ini
Alasan memilih jerapah adalah karena tingginya membuatnya bisa melihat jauh, dan karena ia memiliki jantung terbesar di antara mamalia darat
Bersikap kritis terhadap klaim bahwa pada beberapa penyisipan, urutan tidak penting
struct Foo; struct Bar;, Left menyisipkanimpl Foo { }dan Right menyisipkanstruct Baz;, sehingga komputer tidak mengenali perbedaannyaPositif terhadap pengembangan merge driver Git
printyang berbeda, hasilnya menjadi kode yang tidak validAlat yang sadar sintaks mengalami masalah ketika tim memperluas bahasa dasar agar sesuai dengan masalah yang dihadapi
Ini tampak seperti ide yang dapat membantu penyelesaian konflik terkait pemformatan otomatis
Berencana mencoba Mergiraf, dan sedang menggunakannya bersama git-absorb
Dukungan Python tampaknya akan berguna
Dukungan bahasa masih terbatas, tetapi berharap dukungan untuk lebih banyak bahasa akan ditambahkan