Photo by name_ gravity on Unsplash
Khi nào cần git branh cho môi trường STG (staging) hoặc môi trường testing
Table of contents
Khi nào không cần?
- Khi các task được deploy lên STG là ngay lập tức được deploy lên môi trường PROD (production) luôn. Điều này đòi hỏi làm tới đâu, test tới đó, deploy được PROD luôn. Khả năng này xảy ra thực rất thấp.
Vấn đề
Có nhiều task đang cần deploy STG nhưng chưa đc merge vào main (để deploy PROD). Mình cứ deploy STG ở branch mình làm thì sẽ miss mất commit khác ở STG đã được deploy.
Ví dụ:
- branch
feature/a
đã được deploy trong quá khứ - branch
feature/b
thì do là checkout từmain
ra, nên miss mất commit của branchfeature/a
nên khi được deploy sẽ không test đượcfeature/a
ở STG nữa.
Giải pháp là mình sẽ tạo 1 branch stg
để gộp các commit cần deploy ở STG.
Dẫn đến là branch feature/a
, feature/b
phải được merge vào branch stg
.
Giờ là trước khi deploy stg/prod branch nào thì mình sẽ merge branch đó vào branch stg
.
Tương tự như deploy branch main
lên PROD.
Ngoài ra bạn muốn quản lý source-code nào đang nằm trên STG để tiện debug.