Git Submodule: Mengelola Dependensi dan Mengintegrasikan Subrepositori

Git Submodule memungkinkan Anda menyematkan repositori Git ke dalam repositori Git lain sebagai subdirektori. Ini berguna saat Anda memiliki proyek yang bergantung pada pustaka atau komponen eksternal. Berikut adalah panduan dasar tentang cara menggunakan Git Submodule:

 

Menambahkan Submodule

Untuk menambahkan a Submodule ke repositori saat ini, arahkan ke direktori root repositori dan jalankan perintah berikut:

git submodule add <URL_repository> <destination_path>

di mana <URL_repository> URL repositori yang ingin Anda sematkan, dan <destination_path> merupakan jalur ke subdirektori di repositori saat ini untuk menyimpan file Submodule.

 

Klon Submodule

Setelah Anda menambahkan a Submodule ke repositori, Anda perlu mengkloningnya ke dalam repositori yang ada. Untuk mengkloning Submodule, jalankan perintah berikut:

git submodule init  
git submodule update  

Perintah git submodule init menginisialisasi Submodule dan membuat tautan ke repositori yang berisi Submodule. Perintah git submodule update mengunduh kode sumber Submodule dan memperbaruinya ke dalam subdirektori yang sesuai

.

Bekerja dengan Submodule

Setelah Submodule dikloning ke dalam repositori, Anda dapat menggunakannya sebagai repositori Git independen. Anda dapat checkout cabang, make commits, dan Push di dalam Submodule.

Untuk memperbarui Submodule di repositori yang ada, jalankan perintah:

git submodule update --remote

Perintah ini mengunduh perubahan terbaru dari Submodule repositori dan memperbaruinya di subdirektori terkait.

 

Menghapus Submodule

Jika Anda tidak lagi memerlukan Submodule, Anda dapat menghapusnya dengan menjalankan perintah berikut:

git submodule deinit <submodule_name>  
git rm <submodule_path>  

Ganti <submodule_name> dengan nama Submodule dan <submodule_path> dengan path ke subdirektori yang berisi file Submodule. Kemudian, Anda perlu melakukan dan mendorong perubahan ini.

 

Git Submodule membantu Anda mengelola dependensi dan mengintegrasikan subrepositori ke dalam proyek utama Anda dengan mudah. Ini memungkinkan Anda untuk mempertahankan kode sumber terpisah untuk Submodule dan memperbaruinya dengan mudah bila diperlukan.