GitLabの開発フローとコード管理

Merge Requestを利用したレビュープロセス

1. 保護ブランチワークフロー: 開発メンバー全員が1つのGithubプロジェクトを利用
2. フォークワークフロー:管理者やレビューアのみがリポジトリを操作できるようになっており、開発者はプロジェクトReporterアクセス権限もに付与されており、自身のリポジトリ上で開発を行う

ブランチに対して権限を付与することで、対象ブランチの偶発的な更新や削除を防ぐ

ブランチの作成
$ git checkout -b
ブランチ削除
$ git branch -d

$ git add new_feature.py
$ touch new_feature.py
$ git add .
$ git commit -m “[Add]new feature library Ref #1”
$ git push origin develop

### Merge Requestの作成
マージ先にはmasterが指定されている
開発規模の肥大化を避けるためにも小さい単位でのMerge Requestが望まれる。ただし開発の生産性と複雑度に依存する
Merge Requestがマージされると同時にテストの自動化が必要(シンタックスエラー、デプロイエラーなど)

### ブランチ戦略 GitLab Flow
機能ブランチ(Feature Branch)とMasterブランチ(Master Branch)
環境ごとにブランチを作りmasterからpre-production, productionにmerge requestを送る

なるほど〜
開発工程においてbranchの設計って凄い大事なんやな〜