Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
9
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

Git運用体制について考察

Outline

  • まえがき
  • masterは開発ブランチではない!!
  • プロジェクトマネージャーがmasterを管理しろ!!
  • コメントはソースではなく、プルリク内に書け!!
  • 最終的なGit管理構成

まえがき

仕事で利用していたGit運用体制に納得いかず、どんな運用方法が良いのかを考察したので、Qiitaにまとめようと思いました。

masterは開発ブランチではない!!

自分のところの開発環境がmasterブランチのみで開発を行なっています。いや、それじゃ、SVNと変わらんやん。ブランチの概念理解してます?

  • Gitのmasterブランチの位置付け
    • リリース可能な状態だけを管理する
    • 特定のブランチからマージすることによってしか更新されない
    • 直接コミットしてはならないという制約をもつ
    • バージョンごとのtagはここから生まれる

当たり前のようにmasterブランチは基本ですが、このブランチモデルにおけるmasterは、開発の主軸ではありません。このmasterは、今顧客に提供している価値そのものを表すブランチです。

masterは主軸のソースであって、開発するソースではないんです!!

プロジェクトマネージャーがmasterを管理しろ!!

masterのみで管理していると、developerの方がmasterをいじれます。
先ほども言いましたが、Gitの概念を理解していない。
基本的にはPMの方がソースレビューを行い、git mergeを行います。
PMの方頑張ってください。

コメントはソースではなく、プルリク内に書け!!

GitHub/GitLab/GitBucketには、プルリク(pull request)の機能があります。
プルリクでは、変更した箇所が色分けされており、そこに対しコメントを記述することができます。
色分け、UIによる差分を見ても可読性が向上します。

GitLabのリポジトリをブラウザで開いたです。
GitLabのプルリク

最終的なGit管理構成

  • PM
    • master管理
    • git merge
    • ソースレビュー
  • PG
    • developer使用
    • git push
    • pull request

ざっとこんな感じですかね。
PMとPGは分けて考えないとGitの意味も権限の意味も理解していない。

参考

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
9
Help us understand the problem. What are the problem?