Monorepo dan Submodul Git
Pelajari perbedaan kompromi antara penyiapan monorepo dan banyak repositori, serta cara submodul Git menyematkan satu repositori di dalam repositori lain.
Monorepo dan Submodul Git adalah pelajaran Git & GitHub Professional Workflow gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Git & GitHub Professional Workflow, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Git & GitHub Professional Workflow mencakup 4 pelajaran total.
Repositori Tunggal vs. Banyak Repositori
Repositori tunggal menyimpan banyak proyek dalam satu repositori. Dalam pengaturan banyak repositori, setiap proyek memiliki repositorinya sendiri. Keduanya umum digunakan dalam skala besar.
Mengapa Tim Memilih Repositori Tunggal
Repositori tunggal memudahkan Anda untuk:
- Berbagi kode antarproyek
- Melakukan refaktor lintas batas secara atomik
- Menggunakan satu sistem integrasi berkelanjutan dan satu skema pembuatan versi
Tantangan Repositori Tunggal
Repositori tunggal yang besar dapat berkembang sangat besar sehingga memperlambat proses pengklonan dan integrasi berkelanjutan. Alat seperti pengambilan selektif dan tembolok pembangunan membantu mengelolanya.
Apa Itu Submodul?
Submodul adalah repositori Git terpisah yang disematkan di dalam repositori lain pada komit tertentu. Repositori luar melacak komit repositori dalam yang harus digunakan.
Menambahkan Submodul
Sematkan repositori eksternal pada suatu jalur dengan git submodule add.
git submodule add https://github.com/org/shared-lib libs/sharedFile .gitmodules
Git mencatat jalur dan alamat setiap submodul dalam file .gitmodules yang dilacak di akar repositori.
[submodule 'libs/shared']
path = libs/shared
url = https://github.com/org/shared-libMengkloning dengan Submodul
Klon biasa membuat folder submodul tetap kosong. Gunakan opsi rekursif untuk mengambilnya juga.
git clone --recurse-submodules https://github.com/org/appMenginisialisasi Submodul yang Sudah Ada
Jika Anda sudah melakukan kloning, tarik isi submodul dengan inisialisasi dan pembaruan.
git submodule update --init --recursiveMemperbarui Submodul
Submodul tetap terkunci pada suatu komit. Untuk beralih ke versi terbaru, perbarui isinya lalu komit penunjuk baru pada repositori induk.
git submodule update --remote libs/shared
git add libs/shared
git commit -m 'Bump shared lib'Submodul vs Subpohon
subpohon Git adalah alternatif yang menggabungkan konten repositori lain secara langsung. Cara ini menghindari kerumitan penunjuk yang terkunci, tetapi menghilangkan pemisahan yang jelas.
Memilih Pendekatan
Gunakan monorepositori untuk proyek yang saling bergantung erat, submodul untuk menyematkan pustaka bersama yang versinya dikelola secara independen, dan beberapa repositori ketika setiap tim sepenuhnya mandiri.
Uji Singkat
Uji pemahaman Anda tentang monorepositori dan submodul.
Ringkasan
Anda telah mempelajari monorepositori dan submodul:
- Monorepositori memusatkan banyak proyek; beberapa repositori memisahkannya
- Submodul menyematkan repositori yang dikunci pada suatu komit melalui
.gitmodules - Lakukan kloning dengan
--recurse-submodules - Subpohon adalah strategi alternatif untuk menyematkan repositori
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Monorepo dan Submodul Git” gratis?
Ya — teks lengkap “Monorepo dan Submodul Git” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Git & GitHub Professional Workflow, upgrade ke CoddyKit PRO. Kursus Git & GitHub Professional Workflow mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Monorepo dan Submodul Git”?
Pelajari perbedaan kompromi antara penyiapan monorepo dan banyak repositori, serta cara submodul Git menyematkan satu repositori di dalam repositori lain. Kamu berlatih Git & GitHub Professional Workflow dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Git & GitHub Professional Workflow?
Tidak diperlukan pengalaman sebelumnya. Git & GitHub Professional Workflow di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Monorepo dan Submodul Git” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Git & GitHub Professional Workflow ini?
Ya. Setiap pelajaran Git & GitHub Professional Workflow menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Git di IDE & Alat Pengembangan
- Solusi Git untuk Perusahaan
- Menskalakan Git untuk Tim Besar
- Monorepo dan Submodul Git