Pengenalan Git: Mesin Waktu untuk Kode
Kenapa setiap developer wajib paham version control, apa itu Git, dan bedanya dengan GitHub.
Apa itu Git?
Git adalah sistem version control yang mencatat setiap perubahan kode kamu dari waktu ke waktu. Bayangkan seperti save game: setiap kali kamu menyimpan progress, kamu bisa kembali ke titik itu kapan pun. Bedanya, Git menyimpan riwayat lengkap: siapa yang mengubah apa, kapan, dan kenapa.
Git dibuat oleh Linus Torvalds (pencipta Linux) pada tahun 2005 dan sekarang dipakai hampir semua proyek software di dunia, dari skripsi sampai sistem operasi.
Kenapa version control itu wajib?
Tanpa Git, kerjaan ngoding biasanya berantakan seperti ini:
- Folder penuh file
final.js,final-beneran.js,final-fix-2.js - Kode yang kemarin jalan tiba-tiba error, tapi lupa diubah bagian mana
- Kerja tim = kirim file lewat chat, lalu bingung versi siapa yang terbaru
Dengan Git, semua masalah itu hilang. Setiap perubahan tercatat rapi, kamu bisa eksperimen tanpa takut merusak kode yang sudah jalan, dan kerja bareng tim jadi tertib.
Git itu menyimpan snapshot, bukan perbedaan
Konsep penting: Git tidak menyimpan "file yang berubah saja". Setiap kali kamu menyimpan (disebut commit), Git mengambil foto (snapshot) seluruh proyek pada saat itu. Jadi kembali ke versi lama itu cepat dan aman, karena datanya memang tersimpan utuh.
Git vs GitHub: jangan tertukar
Ini jebakan paling umum untuk pemula:
- Git adalah program yang jalan di komputermu. Ia bekerja 100% offline, tanpa internet.
- GitHub adalah website/layanan tempat menyimpan repository Git secara online, plus fitur kolaborasi seperti Pull Request.
Analoginya: Git itu seperti Microsoft Word yang terinstall di laptop, GitHub itu seperti Google Drive tempat kamu menyimpan dokumennya. Kamu bisa pakai Git tanpa GitHub, tapi tidak sebaliknya.
Tiga area kerja Git
Sebelum masuk ke perintah, pahami dulu alur kerja Git yang selalu sama:
- Working directory: folder proyek tempat kamu mengedit file seperti biasa.
- Staging area: "ruang tunggu" berisi perubahan yang siap disimpan.
- Repository: database Git tempat snapshot tersimpan permanen setelah commit.
Alurnya: edit file di working directory → pilih perubahan yang mau disimpan (staging) → simpan sebagai commit (repository). Pola ini akan dipakai terus di semua modul berikutnya.
Catatan teknis: Git itu terdistribusi, artinya setiap orang yang meng-clone repository punya salinan riwayat lengkap di komputernya masing-masing. Tidak ada "server pusat" yang wajib ada. Inilah kenapa Git tetap bisa dipakai full offline dan kenapa kehilangan server tidak berarti kehilangan riwayat.
Yang akan kamu pelajari
Di kategori ini kamu akan belajar dari nol: install Git, menyimpan perubahan, memakai branch, sampai kolaborasi di GitHub lewat Pull Request dan fork. Tidak perlu pengalaman apa pun, cukup bisa buka terminal.