Ketika mulai membuat project coding, kita tidak hanya perlu menulis kode. Kita juga perlu mengelola perubahan kode dengan rapi.
Di sinilah Git dan GitHub sering digunakan.
Keduanya berhubungan, tetapi bukan hal yang sama.
Apa Itu Git?
Git adalah sistem version control terdistribusi yang digunakan untuk mencatat perubahan file dari waktu ke waktu.
Dengan Git, kita dapat melihat riwayat perubahan, membuat branch, membandingkan versi, dan bekerja bersama tanpa hanya mengandalkan salinan folder manual.
Apa Itu Version Control?
Version control adalah sistem untuk melacak perubahan pada file project.
Tanpa version control, pemula sering memiliki folder seperti:
project-final/
project-final-baru/
project-final-fix/
project-final-fix-bener/
project-final-terakhir/
Git mengganti pola tersebut dengan riwayat perubahan yang lebih terstruktur.
Apa Itu GitHub?
GitHub adalah platform yang menyediakan hosting repository Git dan fitur kolaborasi di internet.
Repository Git dapat berada hanya di komputer lokal, tetapi GitHub memungkinkan repository disimpan pada layanan remote dan dibagikan kepada orang lain sesuai pengaturan akses.
Perbedaan Git dan GitHub
Git
= sistem version control
GitHub
= layanan untuk menyimpan dan berkolaborasi
dengan repository Git secara online
Kita bisa menggunakan Git tanpa GitHub. Kita juga menggunakan Git ketika ingin mengirim perubahan repository lokal ke GitHub melalui workflow umum.
Apa Itu Repository?
Repository atau repo adalah project yang dilacak oleh Git.
Untuk membuat repository Git pada sebuah folder:
git init
Perintah tersebut membuat metadata Git untuk project.
Apa Itu Commit?
Commit adalah snapshot perubahan yang disimpan dalam riwayat Git.
Workflow sederhana:
Ubah file
↓
git add
↓
git commit
↓
Riwayat tersimpan
Apa Itu Staging Area?
Sebelum commit, Git memiliki staging area untuk memilih perubahan mana yang akan dimasukkan.
git add index.html
atau:
git add .
Gunakan git status sebelum commit agar tahu perubahan apa yang masuk.
Contoh Commit
git commit -m "Tambah halaman kontak"
Pesan commit sebaiknya menjelaskan perubahan secara singkat dan jelas.
Apa Itu Branch?
Branch memungkinkan kita membuat jalur pengembangan terpisah.
Contohnya:
main
feature-search
fix-navbar
Branch berguna ketika mengerjakan fitur baru tanpa langsung mengubah branch utama.
Apa Itu Remote?
Remote adalah referensi ke repository di lokasi lain, misalnya GitHub.
Contoh:
git remote add origin URL_REPOSITORY
Setelah remote tersedia, perubahan dapat dikirim ke remote menggunakan git push.
Apa Itu Push?
git push mengirim commit lokal ke repository remote.
git push -u origin main
Apa Itu Pull?
git pull mengambil perubahan dari remote lalu mengintegrasikannya ke branch lokal sesuai konfigurasi.
git pull
Sebelum pull, pahami kondisi branch lokal agar konflik tidak mengejutkan.
Apa Itu Clone?
git clone digunakan untuk membuat salinan working repository dari remote.
git clone URL_REPOSITORY
Git Tidak Sama dengan Backup Penuh
Git sangat baik untuk version control source code, tetapi bukan pengganti semua jenis backup.
Database production, file upload pengguna, kredensial, dan data server perlu strategi backup masing-masing.
Apa Itu .gitignore?
.gitignore digunakan untuk menentukan file yang tidak ingin dilacak Git.
Contoh:
.env
vendor/
node_modules/
*.log
Isi file bergantung pada project. Jangan pernah mengandalkan .gitignore untuk menghapus rahasia yang sudah telanjur masuk riwayat Git.
Jangan Commit Password
Data seperti berikut tidak boleh dimasukkan ke repository publik:
- Password database.
- API key.
- Bot token.
- Private key.
- Credential production.
Gunakan environment variable atau sistem konfigurasi yang sesuai aplikasi.
Workflow Git Dasar
git status
git add .
git commit -m "Pesan perubahan"
git push
Ini hanya workflow dasar. Jangan menjalankan perintah otomatis tanpa melihat apa yang berubah.
Contoh Riwayat Project
Commit 1: Buat struktur HTML
Commit 2: Tambah CSS homepage
Commit 3: Tambah JavaScript menu
Commit 4: Perbaiki tampilan mobile
Dengan commit yang teratur, kita dapat memahami evolusi project.
Kenapa Git Berguna untuk Pemula?
- Membiasakan workflow developer.
- Mempermudah kembali melihat perubahan.
- Membantu eksperimen dengan branch.
- Mendukung kolaborasi.
- Memudahkan deployment tertentu.
Kesalahan Umum Pemula
- Commit file sensitif.
- Menjalankan
git add .tanpa memeriksa status. - Membuat commit terlalu besar dan tidak fokus.
- Menganggap GitHub adalah Git.
- Menghapus folder
.gittanpa memahami akibatnya.
Kesimpulan
Git adalah sistem version control, sedangkan GitHub adalah platform yang dapat digunakan untuk menyimpan dan berkolaborasi dengan repository Git secara online.
Konsep inti yang perlu dipahami pemula adalah repository, staging, commit, branch, remote, push, pull, dan clone.
Materi berikutnya adalah cara install Git di Windows.
Artikel berikutnya untuk kamu
Belum ada rekomendasi lain.
Artikel berikutnya
Cara Membuat Login PHP MySQL yang Aman untuk Pemula →