Fakultas Ilmu Komputer UI

Skip to content
Snippets Groups Projects
Commit 5f5e3d30 authored by Muhammad Raihan Adliputra's avatar Muhammad Raihan Adliputra
Browse files

chore: done tutorial-6

parent c35283b5
No related branches found
No related tags found
1 merge request!6feat(tuorial6): BelajarBelajar
...@@ -2,6 +2,53 @@ ...@@ -2,6 +2,53 @@
## Authors ## Authors
> **Muhammad Raihan Adliputra** - *2006485680* - *A* > **Muhammad Raihan Adliputra** - *2006485680* - *A*
## Tutorial 6
### Pertanyaan
1. Perhatikan apa yang terjadi pada file index.html pada branch feat/tutorial-6-advancedgit-1. Apa yang terjadi setelah git cherry-pick dilakukan? Apakah kita bisa melakukan cherrypick tanpa harus melakukan commit?<br />
Yang terjadi setelah **git cherry-pick** dilakukan adalah menghilangkan file index.html pada branch `feat/tutorial-6-advancedgit-1`. Hal tersebut bisa terjadi karena *commit* belum dilakukan setelah menjalankan command **git cherry-pick**. Oleh karena itu, kita perlu melakukan *commit* terlebih dahulu setelah menjalankan command **git cherry-pick**.
2. Oops! terjadi conflict nih. Yap, conflict ini terjadi karena … <br />
Isi yang ada pada file *index.html* berbeda pada branch `feat/tutorial-6-advancedgit-1` dan branch `tut6-for-merge`.
3. Apa yang terjadi pada log history setelah melakukan rebase (branch rebase-1 dan rebase-2)? Sertakan screenshot log history anda pada kedua branch tersebut!<br />
Yang terjadi pada log history setelah melakukan rebase antara branch `rebase-1` dan branch `rebase-2` adalah log dari branch `rebase-1` hanya memiliki pesan commit **"add a.txt"**. Sedangkan pada branch `rebase-2` akan memiliki pesan commit dari log branch `rebase-1` dan pesan commit dari log miliknya sendiri. Berikut adalah hasil screenshot dari isi log pada branch `rebase-2` saya:<br />
![](screenshoot/log.jpg)
4. Jelaskan perbedaan dari "rebase –continue", "rebase –skip", dan "rebase –abort"!<br />
* **rebase-continue** adalah command yang digunakan untuk melakukan proses rebase setelah menyelesaikan konflik dari proses rebase yang sebelumnya.
* **rebase-skip** adalah command yang digunakan untuk melakukan ulang proses rebase dengan men-skip patch yang sedang dijalankan.
* **rebase-abort** adalah command yang digunakan untuk menggagalkan proses rebase dan meletakkan ulang HEAD ke cabang asli.
5. Jelaskan perbedaan git rebase dan git merge<br />
* **git-rebase** adalah command yang digunakan untuk menyatukan 2 branch dengan hanya mengambil pesan commit dari branch yang lain tanpa harus membuat pesan commit yang baru.
* **git-merge** adalah command yang digunakan untuk menyatukan 2 pesan commit atau lebih menjadi sebuah pesan commit yang baru.
Perbedaan antara kedua command tersebut adalah **git-rebase** akan membuat log commit yang ada lebih mudah dibaca namun akan lebih sulit untuk membenarkan code yang ada ketika terjadi konflik saat menggabungkan antara 2 branch. **git-merge** adalah kebalikannya dari hal tersebut.
6. Pada tahap ini apakah yang terjadi pada direktori git-stash?<br />
Yang terjadi pada direktori git-stash adalah kita akan menghilangkan code yang telah dibuat sebelumnya. Istilahnya, direktori git-stash akan kita *"cut"* dan nantinya akan kita *"paste"* ke dalam branch yang lain.
7. Apa yang terjadi pada file abc.txt setelah melakukan git reset --hard? Bagaimana kondisi lognya? Apa perbedaan git reset dengan git revert?<br />
Yang akan terjadi pada file abc.txt setelah melakukan git reset --hard adalah string **"this is second line from abc file"** akan menghilang. Kondisi dari lognya adalah pesan commit untuk **"update abc file 2"** akan menghilang.
* **git-reset** adalah command yang digunakan untuk
* **git-revert** adalah command yang digunakan untuk
## Tutorial 5
### Pertanyaan
1. Apa itu Postman? Apa kegunaannya?<br />
**Postman** merupakan aplikasi yang akan digunakan sebagai REST CLIENT untuk uji coba dari REST API. Kegunaan dari Postman adalah:<br />
* Menguji API yang sudah dibuat oleh para *developer*.
* Menyediakan fitur **Sharing Collectionn API**, **Testing API**, **Monitoring API**, dan lainnya.
2. Jelaskan fungsi dari anotasi @JsonIgnoreProperties dan @JsonProperty.<br />
* **@JsonIgnoreProperties** berfungsi untuk tidak memperhatikan *property* yang ditentukan dalam serialisasi dan deserialisasi JSON, terutama properti logis.
* **@JsonProperty** berfungsi sebagai sebuah *method* pengambil objek *non-static*
3. Apa kegunaan atribut WebClient?<br />
**WebClient** digunakan untuk restserviceimpl yang nantinya akan digunakan ketika mengirim dan menerima data dari URI.
4. Apa itu ResponseEntity dan BindingResult? Apa kegunaannya?<br />
* **ResponseEntity** merupakan perwakilan dari HTTP response. **ResponseEntity** memperbolehkan kita menambahkan sebuah header dan juga kode status.
* **BindingResult** berfungsi untuk menyimpan hasil validasi, pengikatan, dan berisi kesalahan yang mungkin terjadi. **BindingResult** harus ada tepat setelah objek model divalidasi.
## Tutorial 4 ## Tutorial 4
### Pertanyaan ### Pertanyaan
......
screenshot/log.jpg

103 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment