Pertanyaan Kebingungan dalam memilih antara JavaGit, JGit dan EGit


Saya membuat aplikasi Java yang menggunakan Git. Saya menemukan bahwa ada sesuatu yang disebut JavaGit, EGit dan JGit.

Saya tahu bahwa JavaGit dan EGit / JGit berbeda. Apa yang saya tidak mengerti adalah perbedaan antara EGit dan JGit. Keduanya di-host pada proyek Eclipse tetapi satu tampaknya Eclipse terkait dan yang lainnya tidak.

Saya tidak menggunakan Eclipse dan saya tidak berencana untuk melakukannya, jadi saya benar-benar tidak terlalu peduli tentang "integrasi Eclipse".

Apakah JGit terhubung dengan Eclipse? (Ini di-host di www.eclipse.org, dan dokumentasi JGit juga memiliki banyak kata kunci "gerhana" di dalam)

Dari ketiganya, apa yang saya perlukan untuk menghubungkan program Java saya (tidak ditulis dalam Eclipse) untuk bekerja dengan repositori Git?

Saya lebih suka perpustakaan Git yang berdiri sendiri (yaitu, tanpa tergantung pada instalasi Git lokal)

EDIT: Satu lagi pertanyaan:

EDIT: Saya menemukan jawabannya - tidak (belum mencobanya). ada di transport paket di kelas yang disebut BundleWriter


76
2018-03-17 06:52


asal


Jawaban:


Anda dapat menggunakan JGit sebagai perpustakaan yang berdiri sendiri, tetapi, seperti yang disebutkan di JGit Homepage:

JGit dapat ditemukan dalam:
  * EGit, penyedia tim Eclipse untuk Git

Dalam hal ini, JGit terhubung ke Eclipse di EGit yang menggunakan fitur JGit untuk mengembangkan plugin Eclipse Git.
Mengingat semua proyek Eclipse sekarang berversi di Git repos (bukan sebelumnya CVS repos), saya akan mempertimbangkan JGit untuk proyek Java Anda, karena tampaknya:

  • JavaGit tidak diperbarui untuk beberapa waktu (2008)
  • Eclipse berkomitmen untuk menawarkan dukungan yang baik untuk Git melalui EGit, yang harus memastikan dengan perluasan pengembangan JGit (digunakan oleh EGit).

Thorbjørn Ravn Andersen komentar:

Meskipun Anda mengatakan bahwa Egit menggunakan JGit, tidak cukup jelas di atas bahwa EGit adalah plugin Eclipse untuk git memberikan dukungan git dengan cara yang sama seperti CVS sudah didukung di Eclipse.

Migrasi proyek Eclipse dari CVS ke Git sedang berlangsung, dan telah dilaporkan di sini (oleh Chris Aniszczyk).

Saya telah memantau percakapan tentang migrasi kode proyek dari CVS ke Git dalam daftar dev beberapa proyek.
  Sebagian besar pengembang, tampaknya, memahami proposisi nilai dari migrasi, terlepas dari kekhawatiran mereka bahwa dengan migrasi datang banyak sekali pembelajaran baru ketika mereka mencari cara untuk mengatakan produktif di lingkungan baru.

Tak pelak lagi, diskusi tentang penyedia tim untuk Git yang dikembangkan oleh proyek EGit menjadi bagian penting dari percakapan. “Apakah EGit siap untuk primetime?” Adalah pertanyaan yang sering muncul

Bug resmi menggambarkan komitmen Eclipse untuk menyediakan "dukungan perkakas yang memadai" untuk semua proyek Eclipse yang sekarang ada di Git repo adalah bug 293192.

Untuk mencela VCS lama demi git (bug 270854), perkakas yang memadai   harus tersedia. Bug ini dibuat untuk melacak itu.
  [...] Saya membuka / menautkan yang relevan Hentikan bug untuk memiliki visibilitas / pelacakan yang lebih baik   dari apa yang hilang.

Jadi, Egit adalah satu-satunya proyek yang direferensikan dalam bug itu untuk memberikan dukungan perkakas yang memadai untuk VCS baru (D) yang dipilih untuk semua proyek Eclipse.

(bug 270854 adalah tentang Menyingkirkan alat VCS lama, yang pada dasarnya termasuk CVS.)


Baru saja (17 Maret 2001): Keadaan Git di Eclipse - Awal 2011 (Chris Aniszczyk):

Saya senang bahwa banyak hal telah terjadi sejak tahun lalu berdasarkan statistik Eclipse Marketplace dan kontribusi komunitas yang diterima proyek.

EGit installation rate

Jadi apa selanjutnya? Dalam hal perkakas, kami semakin dekat dengan rilis 1.0 kami (yang direncanakan untuk rilis Indigo).
  Perkakas git di Eclipse jauh lebih baik akhir-akhir ini, jika Anda memerlukan bantuan atau memiliki pertanyaan, mulailah dengan yang terbaik Panduan Pengguna EGit.

Jika Anda seorang eclipse.org proyek, silakan mempertimbangkan memulai proses untuk memindahkan repositori proyek Anda ke Git. Ada banyak proyek eclipse.org yang sudah ada di Git.
  Akan sangat menyenangkan melihat semua proyek eclipse.org memiliki rencana untuk pindah ke Git oleh rilis Indigo.


54
2018-03-17 07:09



Sebagai salah satu penulis JGit dan EGit, maaf atas kebingungannya.

JGit adalah EDL (new-style BSD) berlisensi, ringan, Java library murni yang menerapkan sistem kontrol versi Git. Ini dapat digunakan dalam mode mandiri dan tertanam dalam aplikasi seperti Gerrit, Eclipse, Netbeans dan IntelliJ. EGit menyematkan JGit untuk menggunakannya untuk bekerja dengan repositori Git dan mengekspos konstruksi Git dari dalam Eclipse. Saat ini, JGit tidak mendukung perintah git-bundle tetapi Anda dipersilakan untuk memberikan dukungan, seharusnya tidak terlalu sulit, silakan lihat panduan kontributor kami.


41
2017-07-21 15:34



Hanya untuk berbunyi, karena saya baru saja menemukan pertanyaan ini sekarang.

Ada perbedaan antara Eclipse Foundation dan Eclipse IDE. Yayasan adalah organisasi payung, sementara IDE adalah salah satu proyek yang dikembangkan melalui yayasan. Jadi, hal yang penting untuk diketahui adalah bahwa sama seperti Apache memulai dengan server web dan bercabang menjadi Yayasan yang menghidupi sejumlah proyek, begitu pula Eclipse Foundation kini berkembang melampaui "akar" di IDE.

Jadi dalam konteks ini kode JGit menyediakan Java API untuk perintah git, sementara EGit menggunakan JGit untuk menyediakan dukungan git untuk Eclipse IDE.

Secara pribadi, saya juga menemukan ini sedikit membingungkan pada waktu, dan kadang-kadang hampir tampak bahwa begitu banyak hal terjadi dalam beberapa hal telah merusak fokus organisasi-organisasi ini; namun saya juga dapat melihat utilitas dalam memiliki satu organisasi payung, bukan 20 organisasi yang serupa tetapi berbeda.


4
2018-03-28 18:58



JGit adalah git yang diimplementasikan dari awal sebagai pustaka Java sedangkan JavaGit adalah (adalah?) Java API yang membungkus implementasi git asli (yaitu memanggil baris perintah git asli).

EGit adalah Penyedia Tim Git Eclipse yang mengintegrasikan JGit ke dalam Eclipse IDE dan menyediakan UI untuk bekerja dengan Git dari dalam Eclipse.

Sementara itu sebagian besar komunitas Eclipse dan juga sejumlah besar pengembang perusahaan menggunakan EGit / JGit (itulah alasan mengapa perusahaan-perusahaan mendukung proyek-proyek ini memasukkan uang ke dalamnya). Lihat halaman proyek dan ohloh jika Anda ingin mendapatkan wawasan yang berkontribusi.


3
2017-09-01 08:57



JGit adalah perpustakaan untuk memanipulasi repositori git. Anda tidak menggunakan JGit sendiri, kecuali Anda menulis program untuk memanipulasi repositori git dengan cara yang Anda suka.

Jika Anda menggunakan Eclipse sebagai IDE, Anda menginstal EGit sebagai plugin kontrol versi (default di Indigo). EGit panggilan JGit sehingga Anda juga memiliki JGit diinstal jika Anda menginstal EGit.

Catatan, untuk Netbeans, Anda menginstal NBGit sebagai plugin kontrol versi. NBGit juga memanggil JGit.

JavaGit: tidak terawat secara aktif?


0
2017-08-26 14:51



JGit adalah implementasi Java dari Git. Ini adalah perpustakaan, yang juga dapat digunakan dalam aplikasi Anda sendiri. Ini juga menyediakan semacam operasi CLI. EGit di sisi lain adalah plugin penyedia tim Eclipse untuk Git, yang menggunakan JGit sebagai implementasi Git. Sederhana Anda bisa mengatakan EGit adalah bagian UI, dan JGit bagian latar belakang. JGit tidak bergantung pada EGit, tetapi EGit bergantung pada JGit.

Dari: https://www.eclipse.org/forums/index.php/t/273443/


0
2017-11-18 04:26