CSGE601021 Dasar-Dasar Pemrograman 2 @ Fakultas Ilmu Komputer Universitas Indonesia, Semester Genap 2022/2023
- Kalau kamu bingung, jangan sungkan untuk bertanya pada asdosmu ya ✌
- Jangan deadliner teman-teman!
- Soal Tugas Pemrograman
- Latihan Tugas Pemrograman
- Memulai
- Mengerjakan Tugas Pemrograman
- Mendapatkan pembaruan dari upstream
- Menyelesaikan konflik
- Atribusi
- Lisensi
Sebelum memulai mengerjakan tugas pemrograman, harap mengerjakan Latihan Tugas Pemrograman terlebih dahulu untuk memahami alur pengerjaan tugas pemrograman.
-
Duplikat repositori ini ke akun GitHub kamu. Cara untuk menduplikat repositori Tugas Pemrograman, hampir sama dengan cara menduplikat repositori Latihan Tugas Pemrograman yang dapat dilihat disini
-
Jika visibilitas repositori masih belum private, ubah visibilitas repositori hasil duplikat tersebut menjadi private melalui halaman Settings > General > Danger Zone > Change repository visibility > Change Visibility > Change to private.
-
Tambahkan akun GitHub
asdos kamu
dan@dekdepe
sebagai collaborator di repositori kamu melalui Settings > Collaborators > Add People. -
Lakukan clone repository. Caranya seperti yang sudah dijelaskan pada dokumen Latihan Tugas Pemrograman yang dapat dilihat disini
-
Tambahkan repositori remote bernama
upstream
yang mengarah ke repositori pusat (milik tim pengajar). Caranya seperti yang sudah dijelaskan pada dokumen Latihan Tugas Pemrograman yang dapat dilihat disiniCatatan: Sebuah git remote adalah sepasang alias dan pranala ke suatu repositori. Secara default, repositori yang baru saja kamu clone sudah punya sebuah remote bernama
origin
yang mengarah ke repositori kamu di GitHub. Contoh di atas memberitahu repositori git lokal kamu untuk melacak sebuah repositori git remote lainnya yang berada dihttps://github.com/dekdepe/assignments-22-23
dan menamainyaupstream
. -
Nantinya, akan ada pembaruan pada repositori pusat (misalnya ada soal tugas pemrograman baru atau revisi soal). Kamu bisa mendapatkan commit terbaru dari
upstream
dan menggabungkannya ke repositori lokal kamu menggunakan perintahgit pull upstream master
. -
Apabila kamu ingin menyimpan pekerjaan ke repositori GitHub-mu, gunakan perintah
git push origin master
. Perintah ini akan mengirimkan semua commit yang ada pada repositori lokal ke repositori di GitHub (jika commit tersebut belum ada di repositori GitHub-mu).Catatan: Pastikan kamu melakukan
push
ke remoteorigin
, bukanupstream
! -
Kamu bisa memeriksa bahwa commit yang ada di repositori lokal kamu juga ada di repositori GitHub-mu.
-
Apabila kamu melakukan
push
dari komputer lain (atau repositori lokal lain), misalnya komputer lab, dan kamu ingin lanjut mengerjakan tugas di komputer kamu, kamu dapat menggunakan perintahgit pull origin master
untuk mendapatkan semua commit yang ada di GitHub dan belum ada di komputermu.
-
Misalnya kamu ingin mengerjakan Tugas Pemrograman 1. Masuk ke direktori yang berisi soal tugas tersebut (contoh:
assignment1
). -
Baca berkas
README.md
di dalam direktoriassignment1
dengan teliti. -
Kerjakan tugas tersebut.
-
Gunakan
git add
ataugit reset
untuk stage/unstage berkas yang ingin di-commit ke repositori git kamu. -
Ketika kamu ingin menyimpan progres, commit pekerjaan kamu ke repositori dengan command
git commit -m "<sebuah pesan commit>"
. Usahakan untuk mengikuti panduan ini untuk menuliskan pesan commit yang baik. -
Ulangi langkah 3-5 sampai kamu menyelesaikan tugas tersebut.
-
Ketika kamu sudah siap untuk mengumpulkan pekerjaan kamu (atau ingin menyimpan progres ke GitHub), lakukan
git push origin master
.
Jika ada pembaruan dari upstream
(repositori milik tim pengajar), kamu bisa mendapatkan semua commit terbaru dan menggabungkannya ke repositori git lokal kamu menggunakan perintah git pull upstream master
seperti yang dicontohkan di Latihan Tugas Pemrograman.
Jika kamu belum mengubah teks editor default yang digunakan oleh git, yakni vim
, akan muncul antarmuka vim
yang memungkinkan kamu untuk mengubah pesan commit. Jangan khawatir! Kamu bisa keluar dari vim
dengan mengetik :q
lalu menekan Enter.
Jika kondisi vim
kamu sudah dalam mode INSERT
, kamu mungkin harus menekan Esc terlebih dahulu. Jika kamu sudah mengubah isi pesan commit dan ingin menyimpannya, kamu bisa mengetik :wq
untuk menyimpan dan keluar dari vim
. Jika kamu tidak ingin menyimpan perubahan tersebut, kamu bisa mengetik :q!
untuk memaksa keluar dari vim
.
Jika terjadi merge conflict, silakan selesaikan konflik yang ada dan lanjutkan proses merging. Kamu bisa cari panduan atau meminta bantuan asdos jika mengalami kesulitan.
Struktur Gradle multi-proyek dan isi berkas README utama diadaptasi dari repositori Tugas Pemrograman DDP2 2017/2018 Genap, Tugas Pemrograman DDP2 2019/2020 Genap, Tugas Pemrograman DDP2 2020/2021 Genap, dan Tugas Pemrograman DDP2 2021/2022 Genap.
Hak cipta (c) 2023, Fakultas Ilmu Komputer Universitas Indonesia
Izin legal untuk menyalin, mengubah, dan membagikan pekerjaan dalam proyek ini diatur dalam dua lisensi: BSD 3-Clause dan Creative Commons Attribution-ShareAlike 4.0 (CC BY-SA 4.0). Kecuali disebutkan sebaliknya, lisensi BSD 3-Clause berlaku untuk kode sumber (contoh: Java, YML, berkas konfigurasi), sedangkan CC BY-SA 4.0 berlaku untuk dokumen teks dalam proyek ini.
Peraturan akademis, terutama terkait plagiarisme, tetap berlaku sebagaimana yang telah dijelaskan dalam perkuliahan.