Git adalah salah satu sistem kontrol versi terpopuler yang banyak digunakan oleh developer untuk mengelola kode. Dengan Git, pengguna bisa melacak perubahan pada proyek, berkolaborasi dengan tim, serta mencegah kesalahan yang bisa terjadi dalam pengembangan software. Catatan ini akan membahas langkah-langkah dasar hingga teknik lanjutan dalam menggunakan Git.
Pembahasan
Instalasi Git
Berikut adalah cara install Git di beberapa distribusi Linux:
Setelah menginstall Git, lakukan konfigurasi awal untuk mengatur informasi pengguna seperti username dan email, serta beberapa konfigurasi penting lainnya.
-m adalah perintah untuk move atau mengubah nama branch.
Git Lanjutan (Advance)
Git menyediakan banyak fitur untuk membantu developer dalam mengelola berbagai skenario proyek. Berikut adalah beberapa fitur yang bisa pengguna manfaatkan.
Git Worktree
Git Worktree adalah fitur yang memungkinkan kita bekerja di beberapa cabang sekaligus pada satu repository.
$ git log --oneline --graph --decorate$ git diff # lihat perubahan belum di-stage$ git diff --staged # lihat perubahan yang sudah di-stage$ git log -p -- file.js # lihat diff per commit di satu file
Git Clean
Menghapus file/folder yang belum dilacak (Untracked):
$ git clean -f -d
Git Restore dan Reset
Mengembalikan File
$ git restore file.txt # ke versi terakhir di HEAD$ git restore --staged file.txt # batalkan stage
Menghapus Commit Terakhir
$ git reset HEAD~1 # soft reset, simpan perubahan di working dir$ git reset --hard HEAD~1 # hard re[[#pembahasan|Pembahasan]]set, hapus perubahan
Contoh Kasus pada Git
1. Commit di Branch yang Salah
Jika kita terlanjur melakukan commit di branch yang salah, berikut cara mengatasinya:
$ git reset HEAD~1
2. Git Pull dengan Rebase
Jika ada commit baru di repository GitHub, namun kita sudah memiliki 2 commit terbaru di repository lokal, gunakan --rebase untuk menggabungkan commit dari GitHub ke local tanpa merge conflict:
4. Melihat text yang berubah pada file tertentu tapi tidak tau commit yang mana
$ git log -p -- file.js
Dengan command diatas akan menampilkan semua diff commit pada file ‘file.js’ (seperti menggunakan less).
5. Menghapus folder dari git repository
Untuk menghapus folder dari git repository tanpa menghapus folder tersebut dari working directory (filesystem lokal), bisa menggunakan perintah git rm --cached. Ini akan menghapus folder dari tracking Git, tapi tidak menghapus file/folder secara fisik dari komputer.
Langkah-langkah:
Misalnya kita ingin menghapus folder bernama contoh-folder dari Git:
git rm -r --cached contoh-folder
Penjelasan:
-r: menghapus secara rekursif (untuk folder).
--cached: hanya menghapus dari index Git (bukan dari disk lokal).
Setelah itu:
Tambahkan folder tersebut ke .gitignore agar tidak dilacak lagi setetelahnya:
Commit perubahan: git commit -m "Remove folder from Git tracking"
6. Abaikan file atau folder tapi tidak di gitignore