Apa itu Git & Version Control
Mengapa developer memakai Git, apa bedanya dengan GitHub, dan istilah-istilah dasar yang akan kamu pakai terus.
Masalah yang diselesaikan Git
Pernahkah kamu punya folder seperti ini?
skripsi.docx
skripsi_revisi.docx
skripsi_revisi2.docx
skripsi_FINAL.docx
skripsi_FINAL_betul_ini.docx
Dengan cara itu sulit menjawab pertanyaan sederhana: apa yang berubah antara versi 2 dan versi 4? siapa yang mengubah? kenapa? Untuk kode program masalahnya lebih serius: satu baris yang salah bisa merusak aplikasi, dan di tim, dua orang bisa mengedit berkas yang sama dan saling menimpa pekerjaan.
Version Control System (VCS) adalah alat yang mencatat setiap perubahan pada berkas dari waktu ke waktu, sehingga kamu bisa kembali ke versi mana pun, melihat siapa mengubah apa, dan bekerja bersama tanpa saling menimpa.
Git
Git dibuat oleh Linus Torvalds (pencipta Linux) pada 2005 untuk mengelola kode kernel Linux. Kini Git adalah VCS yang paling banyak dipakai di dunia. Ciri utamanya:
- Terdistribusi. Setiap orang punya salinan lengkap riwayat proyek di komputernya. Kamu bisa bekerja, commit, dan melihat riwayat tanpa internet.
- Cepat. Hampir semua perintah berjalan lokal.
- Berbasis snapshot. Setiap commit menyimpan "foto" seluruh proyek pada saat itu (secara efisien: berkas yang tidak berubah tidak disalin ulang).
- Aman. Setiap commit punya ID unik (hash SHA-1 sepanjang 40 karakter) yang dihitung dari isinya. Mengubah riwayat diam-diam hampir mustahil.
- Branching murah. Membuat cabang pekerjaan baru hanya butuh sepersekian detik.
Git bukan GitHub
| Git | GitHub / GitLab / Bitbucket | |
|---|---|---|
| Apa itu? | Program di komputermu | Layanan web untuk menyimpan repository Git |
| Fungsi | Mencatat riwayat versi | Berbagi, kolaborasi, pull request, issue, CI/CD |
| Perlu internet? | Tidak | Ya |
Analogi: Git seperti aplikasi pengolah foto, GitHub seperti Instagram. Kamu bisa memakai Git tanpa GitHub, tetapi GitHub butuh Git.
Istilah dasar
| Istilah | Arti |
|---|---|
| Repository (repo) | Folder proyek beserta seluruh riwayat Git-nya (disimpan di folder tersembunyi .git) |
| Commit | Satu snapshot proyek + pesan + penulis + waktu |
| Branch | Jalur pengembangan; penunjuk bergerak ke sebuah commit |
| Merge | Menggabungkan pekerjaan dari satu branch ke branch lain |
| Remote | Repository lain (mis. di GitHub) yang terhubung ke repo lokalmu |
| Clone | Menyalin repository beserta seluruh riwayatnya |
Memasang Git
- Windows: unduh dari git-scm.com, atau
winget install Git.Git. - macOS: ketik
git --versiondi Terminal (akan menawarkan instalasi), ataubrew install git. - Linux:
sudo apt install git(Debian/Ubuntu) atausudo dnf install git(Fedora).
Cek instalasi dengan git --version. Di kursus ini kamu tidak perlu memasang apa pun: perintah kamu dijalankan di simulator Git di browser. Perintah, keluaran, dan perilakunya meniru Git asli, jadi apa yang kamu pelajari di sini berlaku persis di komputermu.
Cara berlatih di KelasIT
Di kotak latihan, tulis perintah satu per baris. Baris yang diawali # adalah komentar. Saat kamu menekan Jalankan, semua perintah dieksekusi berurutan dan hasilnya tampil di panel Terminal. Panel Keadaan repository di sebelahnya menunjukkan cabang, berkas, riwayat commit, dan status — sangat membantu memahami apa yang terjadi.
Selain perintah Git, simulator mengenal perintah shell dasar: echo "teks" > berkas (menulis berkas), echo "teks" >> berkas (menambah baris), cat, ls, mkdir, cd, rm, mv, touch.