Skip to main content

Git Workflow

Pengerjaan aplikasi menggunakan GitLab dengan alur kerja seperti berikut.

Git Commit

  • Commit git diusahakan sekecil mungkin (micro commit)
  • Commit harus menggunakan prefix sesuai konteks
  • Commit harus menggunakan deskripsi apa pengerjaan yang masuk dalam commit

Git Conventional Commit

Conventional Commit adalah konvensi ringan di atas commit, ini memberikan penjelasan yang mudah kepada reviewer dan juga membuat riwayat commit menjadi lebih mudah untuk dibaca. konvensi ini sesuai dengan SemVer, dengan menjelaskan fitur, perbaikan, dan perubahan besar yang di buat dalam pesan commit.

Pesan commit harus di susun sebagai berikut :

[type]: [description]

Berikut adalah beberapa type yang bisa di pakai saat anda menuliskan pesan commit beserta penjelasan dari masing-masing type tersebut :

  • feat: Fitur baru yang Anda tambahkan ke aplikasi tertentu
  • fix: Perbaikan bug
  • style: Fitur dan pembaruan terkait styling
  • refactor: Memfaktorkan ulang bagian tertentu dari basis kode
  • test: Segala sesuatu yang berhubungan dengan pengujian
  • docs: Segala sesuatu yang berhubungan dengan dokumentasi
  • chore: Pemeliharaan kode reguler.[ Anda juga dapat menggunakan emoji untuk mewakili jenis komit]

Berikut juga contoh yang bisa dipakai :

git commit -m 'feat: tambah fiture download'

Workflow

  • Engineer membuat branch git sesuai issue yang di assign di redmine oleh Bussiness Analyst
  • Pengerjaan dan commit di local masing-masing
  • Push branch ke repository
  • Membuat Merge Request (MR) ke develop branch
  • Assign pembuat MR sebagai assignee
  • Assign anggota tim engineering lain sebagai reviewer (bisa ke Muhammad Farras Jibran atau Muhammad Fauzan Saputra)
  • reviewer wajib memberikan komentar baik untuk perbaikan ataupun approval
  • maintaner melakukan Merge ke branch develop, dan pastikan saat melakukan merge pilih opsi delete branch dan squash commit sudah di merge
  • Setelah branch untuk pengembangan sudah di merge ke branch develop maka semua engineer wajib melakukan fetch dan update lokal branch dengan melakukan git pull origin develop

Merge Request Template

Saat menambahkan merge request, harap implementasi merge request template berikut. Sesuaikan dengan project yang sedang dikerjakan.

Frontend

## Summary

(Summarize the changes that have been made)

## Videos

- Please upload videos if there are interactions included: e.g: progress bar, spinner, popup, drawer, etc
- Remove this section if not uploading Videos

## Screenshots

- Show whole browser screenshot with URL bar shown where the route is shown
- Remove this section if not uploading Screenshots

## Redmine

- Put any related links related to this Merge Request

## Checklist

Change the `[ ]` to `[x]` for each of these list that are applicable, remove any list item that are not applicable

- [ ] I fixed|updated|added unit tests and integration tests for each feature (if applicable).
- [ ] No `error` nor `warning` in the console.
- [ ] I added videos for the developed feature / bug fix. (Please upload videos if there are interactions included: e.g: progress bar, spinner, popup, drawer, etc)
- [ ] I added screenshots of developed feature

Backend

## Summary

(Summarize the changes that have been made)

## Redmine

- Put any related links related to this Merge Request

## Checklist

Change the `[ ]` to `[x]` for each of these list that are applicable, remove any list item that are not applicable

- [ ] I fixed|updated|added unit tests and integration tests for each feature (if applicable).
- [ ] No `error` nor `warning` in the console.