Lewati ke konten utama

Git Workflow

Branching Strategy​

Menggunakan Git Flow yang disederhanakan:

main ← Production release
├── develop ← Development integration
│ ├── feature/MOB-123-user-auth ← Feature branches
│ ├── feature/MOB-456-payment
│ └── bugfix/MOB-789-crash-fix
├── release/1.2.0 ← Release candidate
└── hotfix/1.1.1 ← Emergency fix

Branch Naming​

<type>/<ticket-id>-<short-description>

Contoh:
feature/MOB-123-user-authentication
bugfix/MOB-456-fix-crash-on-login
hotfix/MOB-789-critical-payment-fix
chore/MOB-012-update-dependencies
refactor/MOB-345-clean-api-layer

Commit Message​

Menggunakan Conventional Commits:

<type>(<scope>): <subject>

Contoh:
feat(auth): implement biometric login
fix(payment): resolve crash on empty cart
refactor(api): migrate to Retrofit 3.x
chore(deps): bump Kotlin to 2.4.20
docs(readme): update setup instructions
test(user): add unit tests for GetUserUseCase

Tipe Commit​

TypeDeskripsi
featFitur baru
fixBug fix
refactorRefactoring tanpa perubahan behavior
choreMaintenance (dependencies, config)
docsDokumentasi
testMenambah / memperbaiki test
styleFormatting, tanpa perubahan logic
perfPerformance improvement
ciCI/CD configuration

Merge Request Rules​

  1. Minimal 1 reviewer harus approve sebelum merge.
  2. CI harus pass (lint, test, build).
  3. Squash merge ke develop (1 commit per feature).
  4. Branch harus up-to-date dengan target branch sebelum merge.
  5. Deskripsi MR harus mencakup: apa yang berubah, kenapa, dan screenshot (jika ada UI change).