Git adalah sistem version control terdistribusi yang mencatat setiap perubahan proyek secara terstruktur sehingga kita dapat bekerja leluasa tanpa takut kehilangan pekerjaan. Course ini menuntun Anda dari konsep dasar version control, instalasi, dan siklus commit harian, melalui branch, remote, rebase, dan pemulihan riwayat, sampai kolaborasi tim dan internals Git — ditutup tujuh proyek terpandu yang menerapkan seluruh materi pada repository nyata.
Seluruh contoh perintah pada Course ini diuji menggunakan Git 2.47. Perintah-perintah yang dibahas bersifat mendasar dan stabil, sehingga tetap berlaku pada versi Git lain termasuk seri terbaru.
Bab 1 Pengantar Git
Kenali konsep version control: sistem yang mencatat setiap perubahan berkas sehingga versi mana pun dapat dipanggil kembali.
Buka → # Masalah Tanpa Version ControlLihat masalah nyata pengelolaan berkas manual — salinan berceceran, versi terbaru tak pasti, suntingan saling menimpa — yang diselesaikan version control.
Buka → # Mengenal GitPerkenalkan Git: sistem version control terdistribusi yang diciptakan Linus Torvalds untuk pengembangan kernel Linux.
Buka → # Sejarah dan Perkembangan GitTelusuri kelahiran Git dari kejatuhan lisensi BitKeeper, perkembangan versinya, hingga posisinya sebagai standar industri.
Buka → # Cara Kerja GitPahami tiga area kerja Git — working directory, staging area, dan repository — beserta aliran perubahan di antaranya.
Buka → # Git vs GitHubBedakan Git sebagai tool version control dari GitHub sebagai layanan hosting — dua hal yang sering disamakan pemula.
Buka → # Distributed Version ControlPahami arti sistem terdistribusi: setiap salinan memuat riwayat lengkap, dan bandingkan dengan model terpusat.
Buka → # Repository dan CommitKenali dua bangunan utama Git: repository sebagai database riwayat dan commit sebagai snapshot perubahan.
Buka → # Alur Belajar GitPetakan jalur belajar Course Git dari konsep dasar hingga kolaborasi tim supaya kita tahu posisi dan arah belajar.
Buka →Bab 2 Instalasi dan Konfigurasi
Periksa prasyarat sistem operasi, terminal, dan hak akses sebelum memasang Git.
Buka → # Instalasi Git di LinuxPasang Git di Ubuntu, Debian, Fedora, dan Arch Linux melalui manajer paket masing-masing.
Buka → # Instalasi Git di WindowsPasang Git for Windows termasuk Git Bash dan pilihan penting pada wizard instalasinya.
Buka → # Instalasi Git di macOSPasang Git melalui Xcode Command Line Tools atau Homebrew di macOS.
Buka → # Instalasi Git di WSLSiapkan Git di Windows Subsystem for Linux beserta pembagian berkas antara Windows dan WSL.
Buka → # Memverifikasi InstalasiPastikan Git terpasang benar melalui git --version dan git help.
Buka → # Konfigurasi IdentitasIsi user.name dan user.email agar setiap commit tercatat atas nama Anda dengan benar.
Buka → # git configKuasai perintah git config beserta tiga level penyimpanannya: system, global, dan local.
Buka → # Konfigurasi EditorAtur core.editor agar Git membuka editor pilihan kita saat menulis pesan commit.
Buka → # Konfigurasi Default BranchAtur init.defaultBranch agar repository baru langsung memakai nama branch kesukaan kita.
Buka → # Konfigurasi Line EndingsAtasi perbedaan akhir baris Windows dan Unix dengan core.autocrlf dan .gitattributes.
Buka → # Konfigurasi AliasBuat pintasan perintah dengan git config alias agar alur kerja lebih cepat.
Buka → # Konfigurasi ProxySambungkan Git melalui proxy jaringan dengan http.proxy untuk lingkungan terbatas.
Buka → # Memahami File KonfigurasiBedah isi .gitconfig, prioritas antar level, dan cara membaca nilainya kembali.
Buka →Bab 3 Dasar Repository
Ciptakan repository dengan git init atau git clone sesuai kebutuhan proyek.
Buka → # git initBedah perintah git init: apa yang dibuatnya, opsi pentingnya, dan keluaran yang dihasilkannya.
Buka → # git cloneSalin repository dari jalur lokal maupun URL remote lengkap dengan seluruh riwayatnya.
Buka → # Struktur RepositoryPeta isi direktori .git dan tiga area kerja yang menyusun sebuah repository.
Buka → # Working TreeKenali working tree sebagai area berkas proyek yang sedang kita sunting.
Buka → # Staging AreaPahami staging area sebagai keranjang persiapan sebelum perubahan dicatat menjadi commit.
Buka → # Git DirectoryTelusuri .git directory: database objek, konfigurasi, dan refs yang menyimpan riwayat.
Buka → # git statusBaca keadaan repository dengan git status beserta arti setiap status berkas.
Buka → # git addMasukkan perubahan ke staging area dengan git add dari berkas tunggal hingga seluruh direktori.
Buka → # git commitCatat snapshot tersimpan dengan git commit dan pahami anatomi keluarannya.
Buka → # git logJelajahi riwayat commit dengan git log dari tampilan ringkas hingga berformat.
Buka → # git diffBandingkan isi berkas antar area kerja dengan git diff.
Buka → # git showPeriksa isi satu commit secara menyeluruh dengan git show.
Buka → # git helpAkses dokumentasi resmi setiap perintah langsung dari terminal dengan git help.
Buka → # Siklus Kerja DasarRangkai seluruh perintah dasar menjadi siklus kerja harian yang utuh.
Buka →Bab 4 Melacak Perubahan
Pahami posisi working tree di antara staging area dan HEAD serta tiga pembandingan git diff yang menghubungkan ketiganya.
Buka → # Status FileKenali empat status berkas Git: untracked, unmodified, modified, dan staged.
Buka → # Untracked dan Tracked FilesBedakan berkas yang diawasi dan belum diawasi Git beserta konsekuensinya.
Buka → # Modified, Staged, dan CommittedTelusuri perjalanan satu berkas dari modified hingga committed.
Buka → # Staging File TertentuPilih berkas tertentu untuk di staging agar commit tetap fokus satu maksud.
Buka → # Staging Sebagian PerubahanGunakan git add -p untuk memilih potongan perubahan (hunk) secara interaktif.
Buka → # Membatalkan StagingKeluarkan perubahan dari staging area dengan git restore --staged.
Buka → # Membuang Perubahan LokalBuang suntingan working tree secara permanen dengan git restore dan bedakan perintah ini dari pembatalan staging.
Buka → # Memulihkan FileAmbil kembali versi berkas dari commit mana pun dalam riwayat dengan git restore --source.
Buka → # Melihat Perbedaan PerubahanBedah keluaran git diff baris demi baris: kepala diff, hunk header, dan tanda tambah minusnya.
Buka → # Diff Antar CommitBandingkan dua titik riwayat dengan git diff antar commit, branch, dan tag.
Buka → # Diff Staged dan UnstagedBandingkan staged, unstaged, dan HEAD untuk tahu persis apa yang akan dicatat.
Buka → # Whitespace dan Opsi DiffSaring whitespace dan sesuaikan konteks diff dengan opsi -w, -b, dan -U.
Buka → # Memeriksa Perubahan Sebelum CommitBangun kebiasaan memeriksa diff dan status sebelum setiap commit.
Buka →Bab 5 Commit dan Riwayat
Bedah isi sebuah commit: hash, parent, author, committer, dan tree.
Buka → # Menulis Commit MessageTulis pesan commit yang jelas: baris subjek ringkas dan body yang menjelaskan alasan.
Buka → # Conventional CommitsTerapkan format Conventional Commits (feat, fix, docs) agar riwayat mudah dibaca dan diotomasi.
Buka → # Opsi git commitKuasai opsi commit yang sering dipakai: -m, -a, --amend, --allow-empty, dan -v.
Buka → # Amend CommitPerbaiki commit terakhir dengan git commit --amend tanpa membuat commit baru.
Buka → # Opsi git logFilter riwayat dengan --author, --grep, --since, dan -n agar pencarian cepat.
Buka → # Format LogSesuaikan tampilan log dengan --oneline, --graph, --stat, dan --pretty.
Buka → # Graph HistoryBaca riwayat bercabang dengan --graph dan pahami pola merge dalam graf.
Buka → # git blameLacak siapa dan kapan mengubah setiap baris berkas dengan git blame.
Buka → # git shortlogRingkaskan kontribusi tiap penulis dalam riwayat dengan git shortlog.
Buka → # Mencari CommitTemukan commit dengan git log -S dan -G saat menelusuri asal sebuah perubahan.
Buka → # Commit Hash dan ReferencesPahami hash SHA-1, singkatan hash, dan cara Git menyelesaikan referensi.
Buka → # Parent CommitPahami relasi parent-child antar commit dan cara menelusuri leluhurnya.
Buka → # Menjaga Riwayat CommitJaga riwayat tetap bersih: ukuran commit yang pas dan disiplin satu commit satu maksud.
Buka →Bab 6 Branch dan Merging
Pahami branch sebagai penunjuk bergerak ke sebuah commit, bukan salinan berkas.
Buka → # Membuat BranchCiptakan branch baru dengan git branch dan git switch -c.
Buka → # Melihat BranchTampilkan daftar branch beserta branch aktif dan commit terakhirnya.
Buka → # Berpindah BranchPindah antar branch dengan aman termasuk menangani perubahan yang belum dicatat.
Buka → # git switchGunakan git switch, perintah modern khusus berpindah dan membuat branch.
Buka → # git checkoutKenali git checkout warisan lintas fungsi dan kapan tetap memakainya.
Buka → # Branch dan CommitLihat bagaimana commit baru menggerakkan penunjuk branch dan membelah riwayat.
Buka → # Fast-Forward MergePahami merge paling sederhana: majukan penunjuk branch tanpa commit penggabung.
Buka → # Three-Way MergeGabungkan dua riwayat yang telah menyimpang dengan commit merge tiga arah.
Buka → # git mergeJalankan penggabungan branch dengan git merge beserta opsi --no-ff dan --ff-only.
Buka → # Merge ConflictsPahami asal konflik, penanda konflik pada berkas, dan status repository saat konflik.
Buka → # Menyelesaikan Merge ConflictsSelesaikan konflik langkah demi langkah: sunting, git add, dan commit penyelesaian.
Buka → # Merge ToolsGunakan merge tool eksternal seperti VS Code untuk menyelesaikan konflik.
Buka → # Membatalkan MergeBatalkan penggabungan yang salah dengan git merge --abort dan git reset.
Buka → # Menghapus BranchHapus branch yang selesai dengan opsi -d dan -D beserta risikonya.
Buka → # Rename BranchGanti nama branch lokal maupun remote dengan benar.
Buka → # Strategi BranchingKenali pola penamaan branch dan kapan memakai branch per fitur, per rilis, atau per orang.
Buka →Bab 7 Remote Repository
Pahami remote sebagai salinan repository di lokasi lain beserta perannya dalam kolaborasi.
Buka → # git remoteKelola daftar remote dengan git remote add, rename, dan remove.
Buka → # Menambahkan RemoteDaftarkan remote origin dan remote tambahan seperti upstream.
Buka → # Mengganti Remote URLUbah alamat remote saat berpindah layanan hosting atau protokol.
Buka → # git fetchTarik pembaruan remote tanpa menggabungkannya ke branch lokal.
Buka → # git pullTarik sekaligus gabungkan pembaruan remote dengan git pull dan git pull --rebase.
Buka → # git pushDorong commit lokal ke remote beserta pengaturan upstream dengan opsi -u.
Buka → # Upstream BranchPahami relasi branch lokal dengan branch remote yang dilacaknya.
Buka → # Tracking BranchAtur pelacakan branch otomatis dengan --set-upstream-to dan push -u.
Buka → # Remote-Tracking BranchPahami branch origin/* sebagai cermin posisi remote pada saat fetch terakhir.
Buka → # Remote Branch ManagementKelola branch remote: prune referensi usang dan rapikan daftar branch.
Buka → # Push RejectedDiagnosa push yang ditolak dan urutan penyelesaiannya tanpa kehilangan pekerjaan.
Buka → # Non-Fast-Forward PushPahami penolakan non-fast-forward dan opsi --force-with-lease yang lebih aman.
Buka → # Sinkronisasi RemoteRangkai fetch, pull, dan push menjadi rutinitas sinkronisasi harian.
Buka → # Menghapus Remote BranchHapus branch di remote dengan push --delete dan rapikan kolaborasi.
Buka →Bab 8 Rebasing dan Riwayat Lanjutan
Pahami rebase sebagai memindahkan rangkaian commit ke dasar baru, bukan menggandakan branch.
Buka → # git rebaseJalankan rebase biasa untuk menyusun ulang branch di atas dasar terbaru.
Buka → # Rebase vs MergeBandingkan rebase dan merge: riwayat linier vs riwayat asli beserta risikonya.
Buka → # Interactive RebaseBuka editor daftar commit dengan git rebase -i dan ubah naskah riwayatnya.
Buka → # Mengubah Urutan CommitSusun ulang baris commit pada interactive rebase untuk mengatur kronologi.
Buka → # Menggabungkan CommitSatukan beberapa commit dengan squash dan fixup agar riwayat ringkas.
Buka → # Mengedit Commit LamaUbah pesan dan isi commit lama dengan reword dan edit pada interactive rebase.
Buka → # Rebase ConflictsSelesaikan konflik yang muncul di tengah rebase dan lanjutkan tahapannya.
Buka → # Abort dan Continue RebaseKendalikan rebase yang terputus dengan --continue, --skip, dan --abort.
Buka → # Cherry-PickAmbil commit pilihan dari branch mana pun tanpa menggabungkan seluruh branch.
Buka → # RevertBatalkan perubahan ter-commit dengan commit pembalik tanpa menghapus riwayat.
Buka → # ResetGeser penunjuk branch ke commit mana pun dengan mode soft, mixed, dan hard.
Buka → # Reset Soft, Mixed, dan HardBedakan tiga mode reset: soft menjaga staging, mixed melepasnya, hard membuang pekerjaan.
Buka → # Revert vs ResetPilih antara revert dan reset sesuai riwayat yang sudah dibagikan.
Buka → # Aturan Aman Mengubah RiwayatTerapkan aturan emas: jangan menulis ulang riwayat yang telah dibagikan ke orang lain.
Buka →Bab 9 Pemulihan dan Recovery
Lihat catatan pergerakan HEAD dengan reflog: jaring penyelamat utama Git.
Buka → # Memulihkan CommitKembalikan commit yang tampak hilang lewat reflog dan cabang baru.
Buka → # Memulihkan Branch TerhapusBangkitkan branch yang terlanjur dihapus dari catatan reflog.
Buka → # Memulihkan File TerhapusKembalikan berkas terhapus baik yang belum maupun sudah tercatat dalam commit.
Buka → # Membatalkan Commit TerakhirPilih jalur undo commit terakhir: amend, reset, atau revert sesuai situasi.
Buka → # Memulihkan StagingAtur ulang isi staging area tanpa kehilangan perubahan aslinya.
Buka → # Menangani Detached HEADPahami kondisi detached HEAD, kapan kondisi itu aman, dan cara kembali ke branch.
Buka → # git stashSimpan sementara pekerjaan yang belum selesai dengan git stash.
Buka → # Stash Apply, Pop, dan DropAmbil kembali, terapkan, dan buang simpanan stash sesuai kebutuhan.
Buka → # Stash BranchLanjutkan pekerjaan dari stash pada branch baru dengan git stash branch.
Buka → # git fsckPeriksa integritas database objek dan temukan objek menggantung.
Buka → # Dangling ObjectsPahami objek menggantung sebagai sisa operasi dan cara memanfaatkannya.
Buka → # Backup RepositoryBuat cadangan repository dengan clone --mirror dan git bundle.
Buka → # Prosedur Recovery AmanIkuti prosedur berurutan saat kehilangan data agar pemulihan maksimal.
Buka →Bab 10 Tags dan Releases
Pahami tag sebagai penunjuk tetap ke commit penting, berbeda dari branch yang bergerak.
Buka → # Lightweight TagBuat tag sederhana yang hanya menyimpan penunjuk ke commit.
Buka → # Annotated TagBuat tag lengkap dengan penulis, tanggal, dan pesan yang tersimpan di database Git.
Buka → # Membuat dan Menghapus TagKelola daftar tag: buat, tampilkan, hapus, dan verifikasi.
Buka → # Berbagi Tag ke RemoteDorong tag ke remote dan tarik tag dari kolaborator.
Buka → # Semantic VersioningTerapkan skema versi MAJOR.MINOR.PATCH sesuai aturan SemVer.
Buka → # Release WorkflowJalankan alur rilis dari pembekuan fitur hingga tag dan pengumuman.
Buka → # ChangelogSusun CHANGELOG.md yang informatif dari riwayat commit.
Buka → # Menandatangani Commit dan TagTanda tangani commit dan tag dengan GPG atau SSH agar keaslian terverifikasi.
Buka →Bab 11 Mengelola File dan Repository
Abaikan berkas dan direktori yang tidak perlu masuk riwayat dengan .gitignore.
Buka → # Pola .gitignoreKuasai pola .gitignore: tanda bintang, direktori, negasi, dan hirarki berkas.
Buka → # Mengabaikan File yang Terlanjur DilacakHentikan pelacakan berkas tanpa menghapusnya dari working directory.
Buka → # git rmHapus berkas dari repository sekaligus working directory dengan git rm.
Buka → # git mvPindahkan dan ganti nama berkas dengan riwayat yang tetap tertelusuri.
Buka → # File Mode dan PermissionAtasi perubahan permission yang memicu diff palsu dengan core.fileMode.
Buka → # Symbolic LinksPahami cara Git menyimpan symlink dan risikonya lintas sistem operasi.
Buka → # File Biner dan DiffTangani diff berkas biner dengan heuristik dan atribut diff khusus.
Buka → # File BesarKenali masalah berkas besar dalam riwayat dan cara mencegahnya.
Buka → # Git LFSSimpan berkas besar di Git Large File Storage agar repository tetap ringan.
Buka → # Sparse CheckoutAmbil hanya sebagian direktori repository dengan git sparse-checkout.
Buka → # Shallow CloneSalin repository tanpa seluruh riwayat dengan clone --depth.
Buka → # SubmodulesSematkan repository lain di dalam repository utama dengan git submodule.
Buka → # git worktreeBekerja di beberapa branch sekaligus tanpa menyalin ulang repository dengan git worktree.
Buka → # Membersihkan RepositoryBersihkan berkas tak terlacak dengan git clean dan opsi keamanannya.
Buka →Bab 12 Kolaborasi Tim
Pahami anatomi kolaborasi Git: model shared dan fork, peran tim, serta siklus branch sampai merge.
Buka → # Fork dan UpstreamKelola fork dan upstream untuk berkontribusi ke proyek orang lain.
Buka → # Pull RequestAjukan perubahan lewat pull request: anatomi, kualitas, dan strategi merge-nya.
Buka → # Code ReviewJalankan review yang membangun: fokus telaah, komentar santun, dan tanggapan yang tepat.
Buka → # Feature Branch WorkflowJalankan siklus lengkap branch fitur: kontribusi, review, merge --no-ff, dan perapian pasca merge.
Buka → # GitHub FlowJalankan workflow ringan resmi GitHub: main selalu deployable dan rilis mengikuti ritme merge.
Buka → # GitFlowTerapkan model branch Vincent Driessen: main produksi, develop integrasi, feature, release, dan hotfix.
Buka → # Trunk-Based DevelopmentKembangkan langsung di branch utama dengan integrasi harian yang kecil.
Buka → # Menjaga Branch Tetap SinkronCegah branch menyimpang jauh dengan rutin rebase atau merge dari branch utama.
Buka → # Menyelesaikan Konflik KolaborasiAtasi konflik antar anggota tim dengan komunikasi dan prosedur yang jelas.
Buka → # Commit ConventionsSatukan gaya pesan commit di seluruh tim dengan konvensi tertulis.
Buka → # Protected BranchesLindungi branch utama dengan proteksi server-side dan syarat merge.
Buka → # Koordinasi ReleaseKoordinasikan cut-off fitur, stabilitasi, dan rilis lintas anggota tim.
Buka →Bab 13 Git Hosting Platforms
Kenali GitHub: layanan hosting Git terbesar beserta fitur kolaborasinya.
Buka → # Mengenal GitLabKenali GitLab beserta keunggulan CI/CD dan opsi self-hosted-nya.
Buka → # Mengenal BitbucketKenali Bitbucket dan integrasinya dengan ekosistem Atlassian.
Buka → # Membuat Repository RemoteSiapkan repository di platform hosting dengan pengaturan awal yang tepat.
Buka → # Menghubungkan Repository LokalTautkan repository lokal ke remote baru maupun remote yang sudah berisi.
Buka → # SSH vs HTTPSBandingkan SSH dan HTTPS untuk akses remote: keamanan, kepraktisan, dan firewall.
Buka → # Membuat dan Menggunakan SSH KeyBuat pasangan kunci SSH ed25519, amankan kunci privatnya, dan daftarkan kunci publiknya ke platform.
Buka → # Personal Access TokenGunakan PAT sebagai kredensial HTTPS yang dapat dicabut kapan saja.
Buka → # Fork dan Pull RequestJalankan alur fork-edit-pull request untuk kontribusi ke proyek publik.
Buka → # Issues dan DiscussionsKelola pekerjaan dan diskusi proyek melalui issues dan discussions.
Buka → # Release dan TagsTerbitkan rilis di platform hosting dengan tag dan lampiran berkas.
Buka → # Git yang Independen dari PlatformPisahkan keterampilan Git dari fitur platform agar tidak terikat satu layanan.
Buka →Bab 14 Keamanan dan Akses
Pahami model kredensial Git dan risiko penyimpanan kata sandi polos.
Buka → # Credential HelperSimpan kredensial dengan helper cache dan store beserta masa berlakunya.
Buka → # SSH AgentPakai kunci SSH tanpa mengetik passphrase berulang lewat ssh-agent.
Buka → # Mengelola TokenKelola personal access token: scope minimal, rotasi, dan pencabutan.
Buka → # Secret dalam Riwayat GitPahami kenapa secret yang terlanjur tercatat tetap dapat dibaca dari riwayat.
Buka → # Menghapus Secret dari RiwayatBersihkan secret dengan penulisan ulang riwayat dan rotasi kredensial.
Buka → # git filter-repoTulis ulang riwayat secara massal dengan git filter-repo untuk menghapus berkas sensitif.
Buka → # Signed CommitsTanda tangani commit agar identitas penulis dapat diverifikasi orang lain.
Buka → # GPG SigningSiapkan kunci GPG dan tanda tangani commit serta tag dengan commit.gpgsign.
Buka → # SSH SigningTanda tangani commit dengan kunci SSH yang mungkin sudah kita miliki.
Buka → # Least PrivilegeTerapkan prinsip hak akses minimal untuk kunci, token, dan collaborator.
Buka → # Repository Security ChecklistAudit menyeluruh repository: akses, branch, kredensial, secret, signature, dan cadangan.
Buka →Bab 15 Hooks dan Otomasi
Pahami hooks sebagai titik pemicu skrip pada peristiwa tertentu dalam Git.
Buka → # Client-Side HooksPeta lengkap hook sisi klien: kapan berjalan, input apa yang diterima, mana yang bisa memblokir.
Buka → # Server-Side HooksJalankan hook di server untuk menolak push yang melanggar aturan tim.
Buka → # Pre-Commit HookBangun hook pre-commit produksi: tolak jejak debug, whitespace error, dan berkas besar.
Buka → # Commit-Msg HookValidasi pesan commit dengan pola Conventional Commits lewat hook commit-msg.
Buka → # Post-Merge HookSinkronkan dependensi dan hasilkan berkas otomatis setelah merge dengan hook post-merge.
Buka → # Mengelola HooksDistribusikan hooks ke seluruh tim: folder versioned, core.hooksPath, framework pre-commit, template dir.
Buka → # Git Alias dan ScriptPerluas Git dengan alias berfungsi dan perintah custom git-* di PATH.
Buka → # Automation dengan ShellRangkai perintah Git menjadi otomasi: status harian, backup, sinkronisasi batch, dan cron.
Buka → # Git dalam CI/CDPosisi Git di pipeline modern: trigger, shallow checkout, versioning dari tag, dan status checks.
Buka →Bab 16 Internals dan Performa
Pahami bahwa seluruh data Git adalah objek: blob, tree, commit, dan tag.
Buka → # Blob, Tree, Commit, dan TagTelusuri empat jenis objek dan relasi yang menghubungkannya.
Buka → # Content-Addressable StoragePahami alamat konten: identitas objek dihitung dari isinya sendiri.
Buka → # References dan RefsKenali refs, packed-refs, dan namespace yang menunjuk ke objek.
Buka → # HEAD dan Detached HEADBedah HEAD sebagai penunjuk tak langsung dan kondisi detached-nya.
Buka → # Index dan CacheBedah berkas index yang menjadi fondasi staging area.
Buka → # PackfilesPahami kompresi delta berbasis objek di dalam packfile.
Buka → # Garbage CollectionPahami siklus hidup objek menggantung dan pembersihan berkala.
Buka → # git gcJalankan pembersihan dan kompresi manual dengan git gc.
Buka → # git maintenanceJadwalkan pemeliharaan otomatis dengan git maintenance.
Buka → # Repository PerformanceUkur dan tingkatkan kecepatan operasi Git pada repository besar.
Buka → # Diagnostik RepositoryDiagnosa repository dengan count-objects, verify-pack, dan fsck.
Buka →Bab 17 Praktik Workflow
Rancang ritme commit dan backup untuk proyek yang dikerjakan sendiri.
Buka → # Workflow Feature BranchJalankan siklus fitur lengkap dari pembuatan branch hingga integrasi.
Buka → # Workflow HotfixPerbaiki galat produksi dengan jalur hotfix yang cepat dan terkendali.
Buka → # Workflow ReleaseBawa fitur dari pengembangan ke rilis dengan langkah terstandar.
Buka → # Workflow Open SourceKelola kontribusi masuk dan keluar pada proyek publik.
Buka → # Workflow Tim KecilSelaraskan alur kerja anggota tim kecil tanpa birokrasi berlebih.
Buka → # Workflow MonorepoKelola banyak proyek dalam satu repository dengan disiplin direktori.
Buka → # Workflow DocumentasiKelola dokumentasi dengan siklus perubahan yang tertib.
Buka → # Memilih Workflow yang TepatPetakan pertanyaan pemilihan workflow sesuai ukuran tim dan produk.
Buka →Bab 18 Proyek Git
Bangun repository pribadi lengkap dari inisialisasi, commit rutin, branch, hingga tag pertama.
Lihat proyek → # Proyek 02: Workflow Feature BranchLatih alur fitur lengkap: branch, merge, penyelesaian konflik, dan perapian riwayat.
Lihat proyek → # Proyek 03: Kolaborasi Melalui RemoteSimulasikan kolaborasi dua orang melalui remote lokal dengan push, fetch, dan sinkronisasi branch.
Lihat proyek → # Proyek 04: Simulasi Code ReviewJalankan siklus review: branch, pull request, tinjauan, dan tindak lanjut feedback.
Lihat proyek → # Proyek 05: Pemulihan RiwayatLatih pemulihan dari berbagai skenario kehilangan: commit, branch, dan backup.
Lihat proyek → # Proyek 06: Otomasi Git HooksBangun validasi pesan commit dan pemeriksaan otomatis berbasis hooks.
Lihat proyek → # Proyek 07: Simulasi ReleaseTerbitkan versi 1.0.0 lengkap: penentuan versi, tag, changelog, dan rilis.
Lihat proyek →Bab 19 Referensi
Contekan perintah Git sehari-hari: init, status, add, commit, dan log.
Buka → # Perintah BranchContekan perintah branch: membuat, berpindah, merge, dan menghapus.
Buka → # Perintah RemoteContekan perintah remote: add, fetch, pull, push, dan prune.
Buka → # Perintah Undo dan RecoveryContekan perintah pemulihan: restore, reset, revert, stash, dan reflog.
Buka → # Perintah Diff dan LogContekan opsi diff dan log untuk membandingkan dan menelusuri riwayat.
Buka → # Perintah TagsContekan perintah tag: membuat, mendorong, dan menghapus.
Buka → # Cheatsheet git configDaftar pengaturan git config yang paling berguna beserta nilai rekomendasinya.
Buka → # Pola .gitignoreKumpulan pola .gitignore siap salin per jenis proyek.
Buka → # Pedoman Commit MessageRingkasan aturan pesan commit beserta contoh baik dan buruknya.
Buka → # Strategi BranchingPerbandingan ringkas strategi branching untuk referensi cepat.
Buka → # TroubleshootingDaftar gejala umum, penyebab, dan penyelesaian masalah Git.
Buka → # GlosariumKamus istilah Git dari annotated tag hingga working tree.
Buka →Bab 20 Lampiran
Pilih dan atur terminal yang nyaman untuk bekerja dengan Git setiap hari.
Buka → # Menyiapkan VS CodePasang dan konfigurasikan VS Code sebagai editor utama untuk Git.
Buka → # Menyiapkan SSHPanduan lengkap membuat, mendaftarkan, dan menguji SSH key.
Buka → # Menyiapkan GPGPanduan lengkap kunci GPG untuk menandatangani commit.
Buka → # Menyiapkan GitHubPanduan akun, repository, dan autentikasi GitHub dari nol.
Buka → # Menyiapkan GitLabPanduan akun dan repository GitLab langkah demi langkah.
Buka → # Dokumentasi GitPeta dokumentasi resmi Git dan cara membacanya secara efektif.
Buka → # Glosarium Git ResmiKenali glosarium resmi Git sebagai rujukan istilah standar.
Buka → # Sumber Belajar LanjutanDaftar buku, tutorial, dan komunitas untuk memperdalam Git.
Buka →