OSSリポジトリをカスタムしてホスティングするためのGitブランチ戦略

Git Branching Strategy for Customizing and Hosting OSS Repositories OSS をフォークして自社向けにカスタマイズし、さらに独自ホスティングまで行うケースがあり、定期的にオリジナルを追従しつつ、それぞれ差分を明確にしていくため、現在運用してる手法をまとめてます。 ブランチ main - メインブランチは追加する内容とデプロイ実行環境を提供します。 original/application-name - ここにオリジナルの内容をリモート (upstream) から取り込みます。 customize/application-name - ここは original/application-name から checkout および rebase しつつ、常に original/application-name の前のコミットとしてカスタマイズ内容が存在するようにします。 application-name の箇所はオリジナルのリポジトリ名です。 記録用のブランチ original/version/application-name customize/version/application-name version はソフトウエアバージョンでも日付でも好きに選べばいいでしょう。 カスタマイズを行い、リリースした時点のオリジナルとカスタマイズブランチをチェックアウトして保持しておきます。GitHub 等においては、original/version/application-name から customize/version/application-name との差分をマージ禁止 Pull Request として作成保持しておくと、diff を振り返えりやすいです。 操作方法 1. upstream(オリジナルリポジトリ)の登録 まずはリポジトリに、オリジナルのリポジトリを upstream として登録します。 1 2 git remote add upstream https://github.com/ORIGINAL/application-name.git git fetch upstream 2. original/application-name ブランチの更新 オリジナルの変更を取り込むためのブランチです。 ...

2025年12月25日 · Toshimitsu Takahashi