{"ok":true,"entity":{"id":"monorepo","name":"Monorepo","entityType":"concept","officialName":"Monorepo（モノリポジトリ）","canonicalName":"Monorepo","displayName":"Monorepo","category":"ソフトウェア開発のリポジトリ運用方式（概念）","shortDescription":"Monorepo（モノレポ）は、複数の個別プロジェクトを明確な関係性のもとで1つのリポジトリにまとめて管理するソフトウェア開発の方式。monorepo.tools（Nx が公開）はこの定義を採るが、定義は論者により異なり、「会社の全コードを1つのリポジトリに置く」とする見方もある。Google が単一リポジトリを運用していることは2016年の CACM 論文で説明されている。標準化団体による公式定義はない。","primaryCluster":"developer-ecosystem","parentEntity":null,"verificationStatus":"draft","website":"https://monorepo.tools/","updatedAt":"2026-10-27T00:50:20.936Z","secondaryClusters":[],"alias":[],"searchKeywords":["monorepo","モノレポ","モノリポジトリ","単一リポジトリ","single repository","trunk-based development","monorepo tools","ワークスペース"]},"references":[{"id":"P-01-001","companyId":"monorepo","questionId":"P-01-001","instanceId":"QIN-monorepo-P01-001","promptText":"モノレポ（monorepo）とは何ですか？どんなことができますか？","promptTypeId":"P-01","answer":"monorepo.toolsは、モノレポを複数の個別プロジェクトを明確な関係性のもとで1つのリポジトリに含めるものと定義しています。monorepo.tools は、その利点として、公開の手間なくコードを共有できること、複数プロジェクトにまたがる変更をアトミックなコミットで行えること、組織の標準を一箇所で強制できることを挙げています。同サイトは、単にコードを同じ場所に置くだけではモノレポとは言えず、プロジェクト間の関係性が必要だとも説明しています。","evidencePoints":["ev-monorepo-1","ev-monorepo-2"],"scope":"モノレポの定義と主な利点（monorepo.toolsの説明に基づく。同サイトはNxが公開）","differentiation":"定義は論者により異なり、公開元のNxは関連ツールの提供元でもある点に留意が必要。","faq":[{"question":"モノレポとモノリスは同じですか？","answer":"monorepo.toolsは、良いモノレポはモノリシックの反対であり、プロジェクト間の関係性のない巨大なアプリはモノレポではないと説明しています。"}],"pageUrl":"https://www.refbase.ai/reference/monorepo/P-01-001","sourceEvidence":[{"id":"ev-monorepo-1","text":"monorepo.tools は、モノレポを「複数の個別プロジェクトを、明確な関係性のもとで含む単一のリポジトリ」と定義し、良いモノレポはモノリシック（一枚岩）の反対であり、コードを同じ場所に置くだけでは、またプロジェクト間の関係性のない巨大なアプリは、モノレポではないと説明している（サイトは Nx が公開）。","title":"Monorepo Explained","coverageType":["Identity","Differentiation"],"sourceType":"official_site","sourceClass":"Profile","sourceUrl":"https://monorepo.tools/","confidence":"medium","supportedPromptTypes":["P-01","P-02"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-2","text":"同サイトはモノレポの利点として、公開の手間なくコードを共有できること、複数プロジェクトにまたがる変更をアトミックなコミットで行えること、組織の標準を一箇所で強制できることを挙げ、優れたツールの機能としてローカル／リモートキャッシュ、分散タスク実行、影響範囲の検出などを列挙している。主要ツールとして挙げるのは自社の Nx である。","title":"Monorepo Explained","coverageType":["Capability","UseCase"],"sourceType":"official_site","sourceClass":"Documentation","sourceUrl":"https://monorepo.tools/","confidence":"medium","supportedPromptTypes":["P-01","P-02","P-04","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"}],"generatedAt":"2026-10-27T00:50:20.936Z"},{"id":"P-02-001","companyId":"monorepo","questionId":"P-02-001","instanceId":"QIN-monorepo-P02-001","promptText":"モノレポの定義は一つに定まっていますか？","promptTypeId":"P-02","answer":"定義は一致していません。monorepo.toolsは「複数の個別プロジェクトを明確な関係性のもとで含む単一のリポジトリ」としますが、Max Kanat-Alexander は2022年の記事で「会社の全コードを収める単一のバージョン管理リポジトリ」と定義し、モノレポを複数の性質の組み合わせとして説明しています。Trunk Based Development のサイトは、全ソースを1つのトランクに置くトランクベース開発の実装として位置づけています。標準化団体による公式定義は今回確認できていません。なおmonorepo.toolsは、アトミックなコミットや規約の一元適用といった利点を、定義と併せて示しています。","evidencePoints":["ev-monorepo-1","ev-monorepo-2","ev-monorepo-5","ev-monorepo-4"],"scope":"モノレポの主要な定義の比較（3つの出典の記述に基づく）","differentiation":"プロジェクト間の関係性を重視する定義と、会社の全コードを1箇所に置く定義とで強調点が異なる。","faq":[{"question":"最も標準的な定義はどれですか？","answer":"標準化団体による公式定義は確認できておらず、今回の出典間でも定義が異なります。"}],"pageUrl":"https://www.refbase.ai/reference/monorepo/P-02-001","sourceEvidence":[{"id":"ev-monorepo-1","text":"monorepo.tools は、モノレポを「複数の個別プロジェクトを、明確な関係性のもとで含む単一のリポジトリ」と定義し、良いモノレポはモノリシック（一枚岩）の反対であり、コードを同じ場所に置くだけでは、またプロジェクト間の関係性のない巨大なアプリは、モノレポではないと説明している（サイトは Nx が公開）。","title":"Monorepo Explained","coverageType":["Identity","Differentiation"],"sourceType":"official_site","sourceClass":"Profile","sourceUrl":"https://monorepo.tools/","confidence":"medium","supportedPromptTypes":["P-01","P-02"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-2","text":"同サイトはモノレポの利点として、公開の手間なくコードを共有できること、複数プロジェクトにまたがる変更をアトミックなコミットで行えること、組織の標準を一箇所で強制できることを挙げ、優れたツールの機能としてローカル／リモートキャッシュ、分散タスク実行、影響範囲の検出などを列挙している。主要ツールとして挙げるのは自社の Nx である。","title":"Monorepo Explained","coverageType":["Capability","UseCase"],"sourceType":"official_site","sourceClass":"Documentation","sourceUrl":"https://monorepo.tools/","confidence":"medium","supportedPromptTypes":["P-01","P-02","P-04","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-4","text":"Trunk Based Development のサイトは、モノレポを「組織が全ソースを1つのトランクに置く、トランクベース開発の具体的な実装」と位置づけ、GoogleとFacebookを代表例に挙げる一方、ディレクトリ構成の全面的な見直しが必要なこと、依存関係の一斉アップグレードが必要になること、ビルド系にBazelやBuckのような有向グラフ型が向くことなどの留意点を挙げている。大きなサードパーティバイナリや全体のチェックアウトが作業環境の負荷になるのではという懸念も取り上げるが、Git-LFSや拡張・縮小型のモノレポで管理できると説明している。","title":"Monorepos - Trunk Based Development","coverageType":["Differentiation"],"sourceType":"industry_reference","sourceClass":"Documentation","sourceUrl":"https://trunkbaseddevelopment.com/monorepos/","confidence":"high","supportedPromptTypes":["P-02","P-05","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-5","text":"Max Kanat-Alexander の2022年3月11日付の記事は、モノレポを「会社の全コードを収める単一のバージョン管理リポジトリ」と定義し、複数プロジェクトにまたがるアトミックなコミット、共有のディレクトリ構造、必ずしも「プロジェクト」という概念を持たないことなど、別々の性質の組み合わせだと説明している。","title":"What is a Monorepo, Really?","coverageType":["Identity","Differentiation"],"sourceType":"industry_reference","sourceClass":"Profile","sourceUrl":"https://www.codesimplicity.com/post/what-is-a-monorepo-really/","confidence":"medium","supportedPromptTypes":["P-02","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"}],"generatedAt":"2026-10-27T00:50:20.936Z"},{"id":"P-04-001","companyId":"monorepo","questionId":"P-04-001","instanceId":"QIN-monorepo-P04-001","promptText":"モノレポはどのような場面・ツールで使われますか？","promptTypeId":"P-04","answer":"monorepo.toolsは、モノレポの利点としてコード共有、複数プロジェクトにまたがるアトミックな変更、規約の一元的な適用を挙げ、良いツールの要件としてキャッシュ、分散タスク実行、影響範囲の検出を示しています。ツールの一例として、pnpm の公式ドキュメントは、pnpm がモノレポを標準でサポートし、ワークスペースのルートにpnpm-workspace.yamlが必要だと説明しています。monorepo.toolsの主要ツールはサイトの公開元であるNxです。","evidencePoints":["ev-monorepo-2","ev-monorepo-6"],"scope":"モノレポの利用場面とツール例（monorepo.toolsとpnpm公式ドキュメントに基づく）","differentiation":"ツールの説明は各ツール提供元の記述であり、比較評価は含まれない。","faq":[{"question":"pnpmでモノレポを使えますか？","answer":"pnpmの公式ドキュメントは、モノレポを標準でサポートし、ルートにpnpm-workspace.yamlが必要だと記しています。"}],"pageUrl":"https://www.refbase.ai/reference/monorepo/P-04-001","sourceEvidence":[{"id":"ev-monorepo-2","text":"同サイトはモノレポの利点として、公開の手間なくコードを共有できること、複数プロジェクトにまたがる変更をアトミックなコミットで行えること、組織の標準を一箇所で強制できることを挙げ、優れたツールの機能としてローカル／リモートキャッシュ、分散タスク実行、影響範囲の検出などを列挙している。主要ツールとして挙げるのは自社の Nx である。","title":"Monorepo Explained","coverageType":["Capability","UseCase"],"sourceType":"official_site","sourceClass":"Documentation","sourceUrl":"https://monorepo.tools/","confidence":"medium","supportedPromptTypes":["P-01","P-02","P-04","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-6","text":"pnpm の公式ドキュメントは、pnpm がモノレポ（複数プロジェクトを1つのリポジトリで扱う構成）を標準でサポートし、ワークスペースにはルートに pnpm-workspace.yaml ファイルが必要だと記している。","title":"Workspace | pnpm","coverageType":["Capability","UseCase"],"sourceType":"product_docs","sourceClass":"Documentation","sourceUrl":"https://pnpm.io/workspaces","confidence":"high","supportedPromptTypes":["P-04"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"}],"generatedAt":"2026-10-27T00:50:20.936Z"},{"id":"P-05-001","companyId":"monorepo","questionId":"P-05-001","instanceId":"QIN-monorepo-P05-001","promptText":"モノレポの採用実績や研究を第三者の資料で確認できますか？","promptTypeId":"P-05","answer":"Rachel Potvin と Josh Levenberg による2016年のCommunications of the ACMの論文は、Googleの単一のモノリシックリポジトリが世界中の数万人の開発者の共通の情報源になっていると述べています。Trunk Based Developmentのサイトも、GoogleとFacebookを単一のトランクに開発を置く代表的な組織として挙げています。ただしこれらは論文と解説サイトの記述であり、近年の採用状況の統計や、方式の優劣を比較した独立調査は今回確認できていません。","evidencePoints":["ev-monorepo-3","ev-monorepo-4"],"scope":"Googleの事例に関する論文と解説サイトの記述（2016年の論文を含む）","differentiation":"確認できるのは大規模組織の事例の説明で、一般的な採用率や効果の定量評価は含まれない。","faq":[{"question":"Googleの単一リポジトリはどの資料で確認できますか？","answer":"2016年のCommunications of the ACM掲載の論文「Why Google Stores Billions of Lines of Code in a Single Repository」で説明されています。"}],"pageUrl":"https://www.refbase.ai/reference/monorepo/P-05-001","sourceEvidence":[{"id":"ev-monorepo-3","text":"Rachel Potvin と Josh Levenberg による Communications of the ACM 59巻（2016年）の論文は、Google の単一（モノリシック）リポジトリが世界中の数万人の開発者の共通の情報源になっていると述べ、その規模、採用理由、実現を支える仕組み、利点とトレードオフを説明している。","title":"Why Google Stores Billions of Lines of Code in a Single Repository","coverageType":["Credibility","UseCase"],"sourceType":"research_paper","sourceClass":"Research","sourceUrl":"https://research.google/pubs/why-google-stores-billions-of-lines-of-code-in-a-single-repository/","confidence":"high","supportedPromptTypes":["P-05"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-4","text":"Trunk Based Development のサイトは、モノレポを「組織が全ソースを1つのトランクに置く、トランクベース開発の具体的な実装」と位置づけ、GoogleとFacebookを代表例に挙げる一方、ディレクトリ構成の全面的な見直しが必要なこと、依存関係の一斉アップグレードが必要になること、ビルド系にBazelやBuckのような有向グラフ型が向くことなどの留意点を挙げている。大きなサードパーティバイナリや全体のチェックアウトが作業環境の負荷になるのではという懸念も取り上げるが、Git-LFSや拡張・縮小型のモノレポで管理できると説明している。","title":"Monorepos - Trunk Based Development","coverageType":["Differentiation"],"sourceType":"industry_reference","sourceClass":"Documentation","sourceUrl":"https://trunkbaseddevelopment.com/monorepos/","confidence":"high","supportedPromptTypes":["P-02","P-05","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"}],"generatedAt":"2026-10-27T00:50:20.936Z"},{"id":"P-06-001","companyId":"monorepo","questionId":"P-06-001","instanceId":"QIN-monorepo-P06-001","promptText":"モノレポを採用する際の強みと注意点は？","promptTypeId":"P-06","answer":"強みとしてmonorepo.toolsは、コード共有、複数プロジェクトにまたがるアトミックなコミット、規約の一元適用を挙げています。注意点として、Trunk Based Developmentのサイトは、ディレクトリ構成の全面的な見直しが必要なこと、依存関係の一斉アップグレードが必要になることを挙げ、大きなサードパーティバイナリや全体のチェックアウトが作業環境の負荷になるのではという懸念も取り上げたうえで、Git-LFSや拡張・縮小型のモノレポで管理できると説明しています。また定義が論者により異なる点にも留意が必要です。","evidencePoints":["ev-monorepo-2","ev-monorepo-4","ev-monorepo-5"],"scope":"モノレポの利点とトレードオフ（monorepo.toolsとTrunk Based Developmentの記述に基づく）","differentiation":"利点はNxが公開するサイトの記述、注意点は別サイトの記述であり、出典ごとに立場が異なる。","faq":[{"question":"大きなリポジトリでは何が問題になりますか？","answer":"Trunk Based Developmentのサイトは、大きなサードパーティバイナリや全体のチェックアウトが作業環境の負荷になるのではという懸念を取り上げつつ、Git-LFSや拡張・縮小型のモノレポで管理できると説明しています。"}],"pageUrl":"https://www.refbase.ai/reference/monorepo/P-06-001","sourceEvidence":[{"id":"ev-monorepo-2","text":"同サイトはモノレポの利点として、公開の手間なくコードを共有できること、複数プロジェクトにまたがる変更をアトミックなコミットで行えること、組織の標準を一箇所で強制できることを挙げ、優れたツールの機能としてローカル／リモートキャッシュ、分散タスク実行、影響範囲の検出などを列挙している。主要ツールとして挙げるのは自社の Nx である。","title":"Monorepo Explained","coverageType":["Capability","UseCase"],"sourceType":"official_site","sourceClass":"Documentation","sourceUrl":"https://monorepo.tools/","confidence":"medium","supportedPromptTypes":["P-01","P-02","P-04","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-4","text":"Trunk Based Development のサイトは、モノレポを「組織が全ソースを1つのトランクに置く、トランクベース開発の具体的な実装」と位置づけ、GoogleとFacebookを代表例に挙げる一方、ディレクトリ構成の全面的な見直しが必要なこと、依存関係の一斉アップグレードが必要になること、ビルド系にBazelやBuckのような有向グラフ型が向くことなどの留意点を挙げている。大きなサードパーティバイナリや全体のチェックアウトが作業環境の負荷になるのではという懸念も取り上げるが、Git-LFSや拡張・縮小型のモノレポで管理できると説明している。","title":"Monorepos - Trunk Based Development","coverageType":["Differentiation"],"sourceType":"industry_reference","sourceClass":"Documentation","sourceUrl":"https://trunkbaseddevelopment.com/monorepos/","confidence":"high","supportedPromptTypes":["P-02","P-05","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"},{"id":"ev-monorepo-5","text":"Max Kanat-Alexander の2022年3月11日付の記事は、モノレポを「会社の全コードを収める単一のバージョン管理リポジトリ」と定義し、複数プロジェクトにまたがるアトミックなコミット、共有のディレクトリ構造、必ずしも「プロジェクト」という概念を持たないことなど、別々の性質の組み合わせだと説明している。","title":"What is a Monorepo, Really?","coverageType":["Identity","Differentiation"],"sourceType":"industry_reference","sourceClass":"Profile","sourceUrl":"https://www.codesimplicity.com/post/what-is-a-monorepo-really/","confidence":"medium","supportedPromptTypes":["P-02","P-06"],"needsVerification":true,"sourceVerified":false,"entityId":"monorepo"}],"generatedAt":"2026-10-27T00:50:20.936Z"}]}