Langsung ke konten utama
My Personal Doc About GIT
- clone = clone remote repository / server to local machine / laptop
- fetch = fetch updated history / git tree dari suatu branch
- pull = untuk mengupdate perubahan code dalam suatu branch
- commit = untuk submit perubahan code dalam suatu branch dilocal machine / laptop
- push = untuk submit perubahan code dalam suatu branch ke remote repository / server
- ammend = mengedit commit sebelumnya dalam suatu branch, tujuannya untuk efesiensi commit
- squash commit = menjadikan multiple commit menjadi single commit, biasanya ketika merging ke main branch
- merge = menggabungkan perubahan yang ada pada suatu branch ke branch yang kita inginkan
- Sample commit message
feat : login
- revamp ui login
- close JIRA-XXXX
- git flow
- main branch is a release branch / production code (prod and sandbox), use main branch as sandbox branch, sandbox sebisa mungkin dibuat mirip dengan production
- development branch is for staging (dev / integ)
- untuk flow sederhana, ketika akan mengerjakan fitur baru atau bug fixing, selalu buat branch baru dari main branch contoh branch feat-abc
- setelah melakukan commit perubahan pada branch feat-abc, maka kita perlu melakukan cherry pick ke development branch, dan build aplikasi staging (dev / integ) dari development branch.
Tujuannya untuk apa? agar semua perubahan code dari semua developer misal ada 10 developer ada dalam 1 branch sehingga tidak ada code yang tertinggal ketika QA melakukan testing.
- setelah proses testing pada staging (dev / integ) selesai maka kita melakukan pull request untuk merge branch feat-abc ke branch main, setelah itu build aplikasi untuk stage sandbox dari branch main untuk di test QA.
- jika proses testing di stage sandbox sudah selesai maka selanjutnya build aplikasi production dari branch main untuk dilakukan test terakhir oleh QA.
- Jika test terakhir sudah selesai maka aplikasi di release ke production (BE server production / Mobile ke play store / app store)
Komentar
Posting Komentar