GLANZ. CREATIVE WORKS
Git

リポジトリ運用

リポジトリの所有者、責任範囲、命名規則、可視性設定に関するガイドライン

リポジトリの所有者と責任範囲

所有権の明確化

各リポジトリには明確な所有者を設定し、責任範囲を定義します。

  • プロジェクトオーナー: プロジェクト全体の技術的な責任者
  • メンテナー: 日常的なコードレビューやマージを担当
  • コントリビューター: 機能開発やバグ修正を行う
GitHubの場合、Organization配下のリポジトリでは、チーム単位で権限を管理することを推奨します。 個人リポジトリではなく、Organization配下で管理することで、メンバーの変更や権限管理が容易になります。

責任範囲の定義

リポジトリごとに以下の責任範囲を明確にしてください:

  • コードレビューの承認者
  • リリース判断の権限者
  • 本番デプロイの実行者
  • セキュリティインシデント対応者
プロジェクトの規模や重要度に応じて、適切な権限分離を行ってください。 特に本番環境に影響するリポジトリでは、複数人によるレビューと承認を必須とすることを推奨します。

リポジトリ命名・可視性

命名規則

リポジトリ名は以下の原則に従って命名します:

  • 小文字とハイフンを使用(例: project-namecompany-website
  • 短く、意味が明確であること
  • プロジェクトの目的が分かる名前にする
company-website
user-management-api
admin-dashboard
design-system
命名時の考慮事項
  • プロジェクト名が長い場合は、一般的な略称を使用しても構いません
  • バックエンドとフロントエンドが分かれている場合は、-api-frontendなどのサフィックスを使用
  • マイクロサービス構成の場合は、サービス名を明確に(例: payment-servicenotification-service

リポジトリの可視性

リポジトリの可視性は、プロジェクトの性質に応じて適切に設定します。

Private(非公開)

デフォルトは Private を推奨します。以下のような場合に使用:

  • クライアントワーク
  • 社内システム
  • 機密情報を含むプロジェクト
  • 開発中のプロダクト

Public(公開)

以下の場合のみ Public に設定:

  • オープンソースプロジェクト
  • 技術ブログのサンプルコード
  • コミュニティ向けツール
  • 採用活動用のポートフォリオ
可視性の変更について一度 Public にしたリポジトリを Private に戻しても、過去の履歴が完全に非公開になるわけではありません。 Fork やクローンされたリポジトリは残り続けるため、機密情報を含む場合は最初から Private で開始してください。

READMEの整備

すべてのリポジトリには、最低限以下の情報を含む README.md を用意してください:

  • プロジェクトの概要
  • セットアップ手順
  • 開発環境の起動方法
  • デプロイ方法(該当する場合)
  • ライセンス情報(オープンソースの場合)
# プロジェクト名

## 概要

このプロジェクトは〇〇を実現するための△△です。

## セットアップ

\`\`\`sh
npm install
cp .env.example .env
\`\`\`

## 開発サーバーの起動

\`\`\`sh
npm run dev
\`\`\`

## ビルド

\`\`\`sh
npm run build
\`\`\`

## デプロイ

詳細は [デプロイガイド](/content/2.deploy-release/deploy.md) を参照してください。