Banner - Belajar Git Part 4

Belajar Git Part 4: Mengelola Branch dan Commit

Pada seri belajar Git Part 3, kita telah mempelajari perintah dasar Git untuk mengelola project secara lokal, mulai dari menyimpan perubahan menggunakan commit hingga membuat dan berpindah branch. Setelah memahami dasar-dasar tersebut, kini saatnya mempelajari cara mengelola perubahan kode dengan lebih lanjut.

Sama seperti bagian sebelumnya, seluruh praktik belajar Git Part 4 ini dilakukan sepenuhnya dalam lingkungan lokal (localhost) di laptop, tanpa memerlukan koneksi internet maupun akun GitHub atau GitLab. Kita akan mempelajari beberapa perintah Git lanjutan, mulai dari menggabungkan branch, menangani konflik penggabungan (merge conflict), menyimpan perubahan sementara, membatalkan commit, hingga memberi tag pada versi rilis project.

Ringkasan

  • Memahami penggunaan git merge untuk menggabungkan perubahan dari beberapa branch.
  • Mempelajari cara menyelesaikan konflik yang muncul saat penggabungan branch.
  • Menggunakan git stash dan git stash pop untuk menyimpan serta mengembalikan draf perubahan tanpa commit.
  • Memahami perbedaan git reset --soft dan git reset --hard untuk membatalkan commit.
  • Menggunakan git tag dan git show untuk menandai serta melihat informasi versi project.
  • Seluruh perintah dipraktikkan di laptop tanpa memerlukan koneksi internet atau akun GitHub/GitLab.

Menggabungkan Branch (git merge)

Git merge adalah perintah dalam sistem kontrol versi Git yang digunakan untuk menggabungkan riwayat perubahan dari satu branch (cabang) ke branch lainnya. Perintah git merge harus diikuti oleh nama branch yang ingin digabungkan (contoh: git merge fitur-baru). Jika Anda hanya mengetik git merge saja, Git akan menampilkan error No remote.

Berikut alur lengkap dari awal sampai berhasil melakukan merge:

  1. Pastikan Anda berada di folder belajar-git, lalu buat file pertama di branch master dan simpan:
echo "Ini file di branch master" > main.txt
git add main.txt
git commit -m "Commit di master"
  1. Buat branch baru bernama fitur-baru dan langsung pindah ke branch tersebut:
git checkout -b fitur-baru
  1. Buat file baru di branch fitur-baru lalu simpan (commit):
echo "Fitur baru selesai dibuat" > fitur.txt
git add fitur.txt
git commit -m "Menambah fitur baru"
  1. Pindah kembali ke branch utama (master):
git checkout master
  1. Gabungkan perubahan dari branch fitur-baru ke branch master (sebutkan nama branch dengan jelas):
git merge fitur-baru

Berikut adalah contoh penulisan command prompt di atas.

hasil melakukan langkah langkah git merge

Menangani Konflik Penggabungan (Merge Conflict)

Git conflict (atau merge conflict) adalah kondisi ketika Git tidak dapat menggabungkan perubahan dari dua branch atau commit secara otomatis . Konflik terjadi ketika dua branch mengubah file dan baris yang sama secara berbeda.

Promo Hosting Murah Rumahweb

Berikut alur runtut untuk memicu dan menyelesaikan konflik:

  1. Pastikan Anda berada di branch master, ubah isi file main.txt, lalu simpan commit:
git checkout master
echo "Revisi dari branch master" > main.txt
git add main.txt
git commit -m "Update main.txt di master"
Menangani Konflik Penggabungan - image 1
  1. Buat branch baru fitur-konflik, otomatis pindah ke sana, lalu ubah file yang sama dengan teks berbeda:
git checkout -b fitur-konflik
echo "Revisi dari branch fitur-konflik" > main.txt
git add main.txt
git commit -m "Update main.txt di fitur-konflik"
Buat branch baru fitur-konflik
  1. Pindah kembali ke branch master dan coba gabungkan untuk memicu konflik:
git checkout master
git merge fitur-konflik
Pindah kembali ke branch master
  1. Git akan menampilkan pesan: CONFLICT (content): Merge conflict in main.txt
  2. Buka file main.txt menggunakan Notepad atau VS Code, hapus penanda konflik (<<<<<<<, =======, >>>>>>>), tentukan isi teks yang benar, lalu simpan file.
  3. Selesaikan konflik di Git dengan menyimpan perubahan tersebut:
git add main.txt
git commit -m "Selesai mengatasi merge conflict"
simpan perubahan git

BACA JUGA: Git Rebase vs Git Merge: Apa Bedanya dan Kapan Digunakan?

Menyimpan Draf Sementara (git stash & git stash pop)

Git Stash adalah fitur di Git yang berfungsi untuk menyimpan sementara perubahan kode (baik yang sudah di-stage maupun belum) tanpa harus melakukan commit.

Git Stash Pop adalah perintah untuk mengembalikan (menerapkan) kembali perubahan yang sudah disimpan tersebut ke direktori kerja Anda, sekaligus menghapus data simpanan (stash) itu dari daftar tumpukan stash.

  1. Saat sedang mengedit file tetapi belum siap di-commit dan harus buru-buru pindah branch, amankan editan Anda ke memori sementara:
git stash
Menyimpan Draf Sementara
  1. Working tree Anda akan kembali bersih, dan Anda bebas berpindah branch.
  2. Untuk melihat daftar draf yang tersimpan di stash:
git stash list
Menyimpan Draf Sementara image 2
  1. Untuk mengembalikan draf kerjaan yang tadi disimpan dan melanjutkannya kembali:
git stash pop
Menyimpan Draf Sementara image 3

Membatalkan Commit (git reset)

Git reset adalah perintah untuk membatalkan commit dengan cara memindahkan posisi HEAD kembali ke commit sebelumnya, baik dengan tetap menjaga kode Anda maupun menghapusnya secara permanen.

  1. Reset Soft (Membatalkan commit, tetapi editan file tetap di Staging Area).
git reset --soft HEAD~1
  1. Reset Hard (Membatalkan commit sekaligus menghapus seluruh editan file secara permanen).
git reset --hard HEAD~1

(Gunakan –hard dengan hati-hati karena editan file yang dibatalkan tidak bisa dikembalikan).

contoh perintah Membatalkan Commit

Membuat Label Versi Rilis (git tag)

Git tag adalah fitur untuk memberikan penanda atau label permanen pada suatu commit tertentu di riwayat proyek Anda

  1. Berikan penanda versi rilis (misal v1.0.0) pada titik commit terakhir Anda:
git tag -a v1.0.0 -m "Rilis Versi 1.0.0 Produk"
  1. Lihat daftar tag yang telah terdaftar di repository:
git tag
contoh git tag
  1. Lihat rincian informasi dan commit yang ditandai oleh tag tersebut:
git show v1.0.0
git tag show

Ringkasan Perintah Lanjutan Git (Cheat Sheet)

Berikut adalah beberapa perintah lanjutan di Git yang dapat Anda pelajari.

Perintah GitFungsi UtamaStatus / Area
git stashMenyimpan sementara draf perubahan
lokal tanpa commit.
Stash Memory
git stash popMengembalikan draf perubahan yang
disimpan dari stash.
Working Tree
git reset --soft HEAD~1Membatalkan 1 commit terakhir, tetapi
perubahan tetap tersimpan di staging
area.
Staging Area
git reset --hard HEAD~1Membatalkan 1 commit terakhir beserta
perubahan pada working tree. Perubahan
yang belum di-commit dapat hilang.
Working Tree
(Dihapus)
git tag -a <versi> -m "pesan"Membuat label versi rilis bertanda pada
commit.
Local Repository
git show <tag>Melihat rincian informasi dan commit
dari tag tertentu.
Local Repository

Penutup

Di belajar Git part 4 ini, kita telah memahami cara menggabungkan branch, menangani merge conflict, menyimpan draf perubahan sementara, membatalkan commit, dan membuat tag versi rilis. Dengan menguasai perintah-perintah tersebut, kita dapat mengelola perubahan kode dan riwayat project dengan lebih terstruktur sebelum membagikannya ke repository remote.

Demikian series belajar Git Part 4 tentang cara mengelola branch dan commit. Ikuti terus seri belajar Git dari Rumahweb untuk mempelajari materi selanjutnya dan memperdalam pemahaman kita tentang Git. Semoga artikel ini bermanfaat!

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 0 / 5. Vote count: 0

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Edi Purnomo

Edi Purnomo, atau yang akrab disapa Edi, adalah bagian dari team technical support Rumahweb yang memiliki minat pada dunia pemrograman, khususnya PHP. Edi suka mengikuti tren seputar web programming hingga database. Melalui Journal Rumahweb, Edi ingin berbagi pengetahuan tentang Bahasa pemrograman, khususnya Bahasa PHP yang ia kuasai.