Git Tingkat Lanjut
Amanda Crawford-Adamo
Software and Data Engineer
Git Submodule
git submodule

Menambahkan submodule menggunakan tautan atau direktori di bawah folder path.
git submodule add <repository link|dir> <path>
$$
Contoh
Menambahkan library data validator ke proyek ETL di folder libs/validator dalam repo ETL.
git submodule add https://github.com/example/data-validator.git libs/validator
Daftar semua submodule dalam proyek
git submodule status
Contoh
$ git submodule status
e1f2...7w8x9 data_cleaning_lib
a1b2...q7r8 api_connector
d9e8...t3u2 visualization_toolkit
Perbarui submodule ke perubahan terbaru
Ada beberapa opsi:
git submodule update --init
git submodule update --init --remote
git submodule update --init <path_to_submodule>
Proses menghapus submodule
git submodule deinit <submodule_name>
git rm <path>
Salin semua file yang perlu ada di repo submodule baru ke folder lain di luar repo.
Di dalam folder baru, buat repository baru untuk submodule:
git init <new-submodule>
Gunakan git filter-repo untuk mengekstrak file dan riwayat yang relevan dari proyek utama:
git filter-repo --path <extract_path> --invert-paths
Tambahkan repository hasil ekstraksi sebagai submodule ke proyek utama:
git submodule add <new-submodule_path> <path_to_store_submodule>
Kasus penggunaan:
Praktik terbaik:
Git Tingkat Lanjut