Git SCM
Git adalah salah satu sistem pengontrol versi (Version Control System) yang paling banyak digunakan. Sistem pengontrol versi bertugas mencatat setiap perubahan pada file proyek yang dikerjakan oleh banyak orang maupun sendiri. Git dikenal juga dengan distributed revision control (VCS terdistribusi), artinya penyimpanan database Git tidak hanya berada dalam satu tempat saja.
Instalasi Git
Windows
Download Git di sini (opens in a new tab). Setelah selesai, jalankan file installer yang telah di-download. Ikuti langkah-langkahnya sampai selesai.
Linux (Debian/Ubuntu)
Jalankan perintah di bawah ini di terminal Ubuntu kamu.
sudo apt-get install git
MacOS X
Download Git di sini (opens in a new tab). Setelah selesai, jalankan file installer yang telah di-download. Ikuti langkah-langkahnya sampai selesai.
Untuk bisa tahu apakah Git sudah terinstall, jalankan perintah di bawah ini:
git --version
Jika tampil Git dan versinya
, berarti sudah terinstall. Bila tidak tampil, maka perlu untuk install Git terlebih dahulu.
Konfigurasi Git
Setelah Git terinstall, kita perlu mengonfigurasi Git agar dapat digunakan. Konfigurasi ini hanya dilakukan sekali saja.
Pastikan kamu sudah mendaftar akun GitHub (opens in a new tab). Kalau belum, bisa mendaftar akun GitHub (opens in a new tab) terlebih dahulu.
git config --global user.name "username github kamu"
git config --global user.email "email github kamu"
Contoh:
git config --global user.name "fulanbinbfulan"
git config --global user.email "fulanbinfulan@gmail.com"
Konfigurasi Default Branch
Setelah konfigurasi Git, kita perlu mengonfigurasi default branch (branch utama) agar menggunakan branch main
secara global. Konfigurasi ini hanya dilakukan sekali saja.
git config --global init.defaultBranch main
Melihat Daftar Konfigurasi
Setelah melakukan konfigurasi, kamu dapat melihat daftar yang telah kamu konfigurasi. Caranya dengan menjalankan perintah di bawah ini:
git config --list
Kemudian akan tampil daftar yang telah dikonfigurasi. Jika belum ada, kamu harus mengonfigurasi kembali.
user.name=fulanbinbfulan
user.email=fulanbinbfulan@gmail.com
init.defaultbranch=main
Membuat Repositori Git
Repositori Git adalah tempat penyimpanan file proyek yang dikerjakan oleh Git. Untuk membuat repositori Git, buat folder/direktori baru, lalu jalankan perintah git init
.
mkdir myproject
cd myproject
git init
git init
: untuk membuat repositori pada file lokal yang nantinya ada direktori .git
, direktori .git
biasanya dalam keadaan hidden directory (direktorinya disembunyikan).
Menghapus Repositori Git
Repositori Git di file lokal dapat dihapus. Jika ingin mereset atau menghapus inisialiasi Git pada direktori proyek kita yang sebelumnya kita pernah menjalankan perintah git init
. Caranya dengan menjalankan perintah di bawah ini:
rm -rf .git
Direktori .git
akan terhapus pada direktori proyek kita.
Menambahkan File ke Repositori Git
Setelah repositori Git dibuat, kita dapat menambahkan file ke repositori Git tersebut. Untuk menambahkan file ke repositori Git, jalankan perintah git add <nama file>
. Contoh:
git add index.html
# jika di dalam dir/folder
git add home/index.html
Jika ingin menambahkan semua, jalankan perintah berikut:
git add .
Membuat Commit
Setelah file ditambahkan ke repositori Git, kita dapat membuat commit. Commit adalah tanda bahwa file yang ditambahkan sudah selesai dikerjakan. Untuk membuat commit, jalankan perintah git commit -m "pesan commit"
. Contoh:
git commit -m "menambahkan fitur autentikasi sign in & sign up"
Melihat Log Commit
Setelah commit dibuat, kita dapat melihat log commit yang telah dibuat. Untuk melihat log commit, jalankan perintah git log
.
git log
Membatalkan Perubahan
Setelah commit dibuat, kita dapat membatalkan perubahan yang telah dibuat. Untuk membatalkan perubahan, jalankan perintah git checkout <nama file>
.
git checkout index.html
# jika di dalam dir/folder
git checkout home/index.html
Git Remote
Git remote adalah repositori Git yang berada di tempat lain. Git remote digunakan untuk menyimpan repositori Git di tempat lain.
Membuat Git Remote
Untuk membuat Git remote, buat repositori Git di tempat lain, lalu jalankan perintah git remote add origin <link repositori github>
. Contoh:
git remote add origin https://github.com/username/repositori.git
# atau jika menggunakan SSH
git remote add origin git@github.com:username/repositori.git
Mengirim Commit ke Git Remote
Setelah Git remote dibuat, kita dapat mengirim commit ke Git remote tersebut. Untuk mengirim commit ke Git remote, jalankan perintah git push
.
git push origin main
Kalau setelahnya bisa tanpa origin <branch>
,
git push
Jika masih tidak bisa, gunakan git push origin <branch>
kembali.
Mengambil Commit dari Git Remote
Setelah Git remote dibuat, kita dapat mengambil commit dari Git remote tersebut. Untuk mengambil commit dari Git remote, jalankan perintah git pull
.
git pull origin main
Kalau setelahnya bisa tanpa origin <branch>
,
git pull
Jika masih tidak bisa, gunakan git pull origin <branch>
kembali.
Mengubah Pesan Commit
Kamu dapat mengubah pesan commit yang terakhir kali kamu kirimkan, dengan menjalankan git commit --amend
, tekan Enter. Contoh:
git commit --amend
# atau langsung dengan menuliskan pesan commitnya
git commit --amend -m "pesan commit baru"
Setelah itu kirim/push ke github dari commit yang telah diubah dengan menjalankan perintah di bawah. Jangan lupa tambahkan -f atau --force
.
git push -f origin <nama_branch>
# atau
git push -f
Referensi: Changing a commit message (opens in a new tab)
Git Clone
Membuat Git Clone
Git clone adalah command dalam Git yang digunakan untuk membuat salinan lengkap dari suatu repositori. Perintah ini meng-copy semua file, log, dan versi dari repositori asli ke direktori baru di komputer lokal pengguna.
Untuk membuat Git clone, ambil link repositori GitHub di tempat lain, lalu jalankan perintah git clone <link repositori github>
. Contoh:
git clone https://github.com/username/repositori.git
# jika menggunakan ssh
git clone git@github.com:username/repositori.git
Git Branch
Membuat Branch
Branch adalah percabangan dari repositori Git. Branch digunakan untuk mengembangkan fitur baru tanpa mengganggu branch utama. Untuk membuat branch, jalankan perintah git branch
.
git branch fitur1
Pindah Branch
Setelah branch dibuat, kita dapat pindah ke branch tersebut. Untuk pindah branch, jalankan perintah git checkout
.
git checkout fitur1
Menggabungkan Branch
Setelah branch selesai dikerjakan, kita dapat menggabungkan branch tersebut ke branch utama. Untuk menggabungkan branch, jalankan perintah git merge
.
git merge fitur1
Menghapus Branch
Setelah branch selesai dikerjakan, kita dapat menghapus branch tersebut. Untuk menghapus branch, jalankan perintah git branch
.
git branch -d fitur1
Git rm
dan reset
Menghapus File
Setelah file selesai dikerjakan, kita dapat menghapus file tersebut. Untuk menghapus file, jalankan perintah git rm
.
git rm index.html
# jika di dalam dir/folder
git rm -r home/index.html
Menghapus Commit
Setelah commit selesai dikerjakan, kita dapat menghapus commit tersebut. Untuk menghapus commit, dengan menjalankan git reset --hard HEAD^
atau git reset --hard HEAD~1
, tekan Enter. Contoh:
git reset --hard HEAD~1
# atau
git reset --hard HEAD^
Jika kamu ingin menghapus 2 commit terakhir sekaligus, kamu bisa menjalankan seperti perintah di bawah ini.
git reset --hard HEAD~2
Setelah itu kirim/push ke github dari commit yang telah diubah dengan menjalankan perintah di bawah. Jangan lupa tambahkan -f atau --force
.
git push -f origin <nama_branch>
# atau
git push -f
Referensi: Removing the last commit (opens in a new tab)
Git Conflicts
Git conflicts adalah konflik yang terjadi ketika dua atau lebih orang mengubah file yang sama. Konflik ini terjadi karena Git tidak tahu perubahan mana yang harus digunakan.
Membuat Konflik
Untuk membuat konflik, buat branch baru, lalu ubah file yang sama di branch tersebut.
git checkout -b fitur1
git checkout -b fitur2
Mengatasi Konflik
Untuk mengatasi konflik, kita perlu memilih perubahan mana yang akan digunakan. Setelah itu, kita perlu membuat commit.
git add index.html
git commit -m "pesan commit"