F3 · Modul 11
Kolaborasi di GitHub
43 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- Remote adalah repo lain.
fetchmengunduh objek dan menggeser ref pelacakorigin/*;pushmengirim objek lalu meminta server menggeser ref, dan server hanya setuju bila maju cepat. - Pull request adalah permintaan menggabungkan satu cabang sesudah ditinjau dan diperiksa; proteksi cabang memaksa aturan itu.
- Jangan
push --forceke riwayat bersama;--force-with-leasemenolak bila ada pekerjaan orang lain yang belum kamu lihat. - Pesan commit konvensional membuat riwayat terbaca mesin:
featmenaikkan MINOR,fixPATCH, perubahan merusak MAYOR. - Token tidak pernah masuk URL remote atau commit; token yang bocor dicabut dulu.
Sebelum mulai
±4 jam (termasuk lab di GitHub).
Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.
Hasil belajar: menjelaskan remote sebagai repo lain dan ref pelacak (origin/main) sebagai catatan lokal keadaan server; memakai clone, fetch, pull (--ff-only, --rebase), dan push (-u, hulu); membaca maju/mundur cabang terhadap hulunya; menjelaskan kenapa push ditolak dan memakai --force-with-lease, bukan --force; menjalankan alur pull request (cabang, PR draf, review, pemeriksaan, cara menggabung), menautkan issue, dan bekerja lewat fork; menjelaskan proteksi cabang; menulis pesan commit konvensional dan menurunkan versi semantik darinya; memakai GitHub CLI dan review dengan AI secara bertanggung jawab; serta menjaga token dan rahasia secara defensif.
Proyek: Perkakas Makmur langkah 11: repo perkakas di GitHub, PR pertama dengan review, dan tag rilis v0.1.0 (kontrak proyek).
Istilah di modul ini (33)
Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course
Bahan modul
Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.
- 11 contoh kode
- 8 berkas latihan + tes
Lihat isi zip
- BACA-DULU.txt
- patok-git.sh
- contoh_f3_11_967.py
- contoh_f3_11_1049.py
- contoh_f3_11_1075.py
- contoh_f3_11_1180.py
- contoh_f3_11_1326.py
- contoh_f3_11_1443.py
- contoh_f3_11_1853.py
- contoh_f3_11_1932.py
- contoh_f3_11_1961.py
- contoh_f3_11_1993.py
- contoh_f3_11_2016.py
- test_f3_11_1.py
- test_f3_11_2.py
- test_f3_11_4.py
- test_f3_11_6.py
- test_f3_11_7.py
- test_f3_11_3.py
- test_f3_11_5.py
- test_f3_11_8.py