リポジトリの 2 つの異なる「ビュー」を維持したいと考えています。1 つはコード全体を表示するアクセス制御を備えたもので、もう 1 つはいくつかのディレクトリが削除された公開のものです。
これは git または svn で可能ですか? おそらく、ミラーリング スクリプトの何らかの形式を使用してですか?
両方のリポジトリで同じリビジョンを維持し、公開リポジトリのユーザーがパッチを送信できるようにしたいと考えています。
前もって感謝します。これは奇妙なものだと思います!
詳細については編集してください:
非常に大規模でかなり複雑なオープン ソース アプリケーションを開発しています。私たちのユーザーは現在、svn から直接更新しています。私たちの目的には、tarball よりもはるかにうまく機能します。
一般にアクセス可能な svn リポジトリがあり、小さなバグの修正を迅速に展開し、誰もが 1 つのコマンドでそれらをダウンロードできるようにします。データベース スキーマを維持するためのシステムもあります。基本的に、私たちはこのシステムから離れたくありません。
商用ライセンシーのみが利用できる機能がいくつかあります (ダンボール箱とラーメンの代金を支払う必要がありますよね?)。私は基本的に、「マスター」リポジトリを認証を要求するように移動し、パブリック リポジトリをそのリポジトリのミラーにして、非フリー コードを削除したいと考えています。
たとえば、認証されたユーザーには次のように表示されます。
html/index.php
html/includes/functions.php
html/includes/non-free/functions.php
ただし、パブリック ユーザーには次のように表示されます。
html/index.php
html/includes/functions.php
2 つのツリーを別々に維持しようとするのは、本当に本当にしたくありません。おそらく、無料バージョンのコードが大幅に遅れてしまい、無料バージョンのバグを修正することが難しくなります。