Tutorial Git dan Github Bagian #4 (Github Kolaborasi – Branch, Conflict, Merge)

Materi GitHub Kolaborasi (2–3 Orang)

Studi Kasus: Proyek Website Sekolah

Tujuan Pembelajaran

Setelah mempelajari materi ini, peserta mampu:

  • Bekerja kolaborasi menggunakan GitHub
  • Membuat dan menggunakan branch masing-masing
  • Push & pull perubahan kode
  • Mengatasi merge conflict
  • Melakukan merge ke branch utama
  • Bekerja tim dalam proyek website sekolah

Pembagian Peran Tim (Contoh 3 Orang)

NamaPeran
Anggota 1Repository Owner / Leader
Anggota 2Frontend Developer
Anggota 3Content / Page Developer

Jika hanya 2 orang, Anggota 2 & 3 bisa digabung perannya.


Studi Kasus Proyek

Membuat Website Sekolah Sederhana dengan halaman:

  • index.html (Beranda)
  • profil.html (Profil Sekolah)
  • kontak.html (Kontak)
  • style.css

STEP 1 – Menentukan Repository Owner

Anggota 1 (Leader)

  1. Login ke GitHub
  2. Klik New Repository
  3. Isi:
    • Repository name: website-sekolah
    • Public
    • Add README
  4. Klik Create Repository

STEP 2 – Clone Repository ke Laptop

Semua Anggota

git clone https://github.com/username/website-sekolah.git
cd website-sekolah

STEP 3 – Leader Menambahkan Kolaborator

Anggota 1

  1. Masuk repo → Settings
  2. Klik Collaborators
  3. Tambahkan username GitHub Anggota 2 & 3
  4. Mereka Accept Invitation

Berikut tampilan collaborators, klik add people dan cari username teman/anggota tim

Setelah itu cek email masing-masing, dan klik link email tersebut untuk masuk tampilan accept invitation

klik tombol accept invitation dan selamat anda sudah berhasil bergabung ke repository owner/leader anda


STEP 4 – Membuat Branch Masing-masing

Setiap Anggota

Anggota 1 (Leader)

git checkout -b leader

Anggota 2

git checkout -b frontend

Anggota 3

git checkout -b konten

Cek branch:

git branch

STEP 5 – Membuat Struktur Awal (Leader)

Anggota 1

touch index.html profil.html kontak.html style.css

Commit & push:

git add .
git commit -m "Inisialisasi struktur website sekolah"
git push origin leader

STEP 6 – Sinkronisasi Repository (WAJIB)

SEMUA ANGGOTA (di branch masing-masing)

⚠️ Aturan wajib sebelum ngoding:
👉 SELALU git pull dulu sebelum edit file
Supaya kode lokal kita sinkron dengan GitHub dan menghindari conflict tidak perlu.

git pull origin leader

kenapa kita git pull origin ke branch leader dulu ? supaya repo lokal kita sama dengan punya leader (ada file html nya)

git add .
git commit -m "update repo ke branch di github"
git push origin (ketikan branch masing-masing)

STEP 7 – Mengerjakan File Berbeda (Aman Tanpa Conflict)

Anggota 2 (Frontend)

git checkout frontend
git pull origin frontend

Edit index.html:

<h1>Selamat Datang di Website Sekolah</h1>
<p>Sekolah unggulan berbasis teknologi</p>
git add index.html
git commit -m "Menambahkan konten beranda"
git push origin frontend

Anggota 3 (Konten)

git checkout konten
git pull origin konten

Edit profil.html:

<h2>Profil Sekolah</h2>
<p>Sekolah berdiri sejak tahun 2000</p>
git add profil.html
git commit -m "Menambahkan profil sekolah"
git push origin konten

STEP 8 – Sinkronisasi ke Main Sebelum Edit File yang Sama

Akan mengedit file yang sama (index.html)

Semua anggota WAJIB update dari main

git checkout -b main
git pull origin main

Kembali ke branch masing-masing dan merge main:

Anggota 2

git checkout frontend
git merge main

Anggota 3

git checkout konten
git merge main

STEP 9 – Mengedit File yang Sama (Simulasi Conflict)

Anggota 2

Edit index.html:

<h1>Website Resmi SMA Cendikia</h1>
git add index.html
git commit -m "Update judul website"
git push origin frontend

Anggota 3

Edit index.html:

<h1>Selamat Datang di SMA Cendikia Learning</h1>
git add index.html
git commit -m "Perubahan judul versi konten"
git push origin konten

STEP 10 – Leader Pull & Merge (Conflict Muncul)

👤 Anggota 1 (Leader)

git checkout -b frontend
git pull origin frontend

git checkout -b konten
git pull origin konten

git checkout main
git pull origin main

git merge frontend
git merge konten

💥 Merge conflict terjadi di index.html


STEP 11 – Menyelesaikan Merge Conflict (Detail)

Buka index.html:

<<<<<<< HEAD
<h1>Website Resmi SMA Cendikia</h1>
=======
<h1>Selamat Datang di SMA Cendikia Learning</h1>
>>>>>>> konten

✍️ Perbaiki menjadi:

<h1>Website Resmi SMA Cendikia Learning</h1>

Simpan lalu:

git add index.html
git commit -m "Resolve conflict pada index.html"

STEP 12 – Push Final ke GitHub

git push origin main

🎉 Proyek kolaborasi berhasil dengan alur profesional


🧠 CATATAN PENTING

✔️ git pull = ambil update terbaru
✔️ Jangan edit sebelum pull
✔️ Conflict = hal normal dalam tim
✔️ Branch = penyelamat kerja tim
✔️ Merge = penggabungan hasil kerja


Rangkuman Alur GitHub Kolaborasi

  1. Buat repository
  2. Tambah kolaborator
  3. Buat branch masing-masing
  4. Kerja terpisah
  5. Push ke GitHub
  6. Merge ke main
  7. Tangani conflict
  8. Proyek selesai

TUGAS STUDI KASUS (UNTUK KELOMPOK)

Kerjakan secara berkelompok (2–3 orang)

Ketentuan:

  • Wajib menggunakan branch berbeda
  • Minimal 2 file dikerjakan bersama
  • Harus terjadi merge conflict
  • Sertakan screenshot:
    • Branch
    • Commit history
    • Conflict resolution

Output:

  • Link repository GitHub
  • Website sekolah sederhana

Tags :

Leave a Reply

Your email address will not be published. Required fields are marked *

9 − 2 =

Tutorial Terpopuler

Tutorial Pilihan

Tentang Gurututorku

Gurututorku adalah sebuah kursus online maupun offline yang menyediakan berbagai macam tutorial tentang pemrograman, design, dan multimedia serta artikel teknologi yang tentunya bisa dinikmati dan dipelajari oleh semua orang yang baru ingin belajar dunia IT.

© 2024 – Gurututorku.com | Learning today success tomorrow.