2009-05-04 13 views
0

私は、マイナーな(数十のソースファイル)ローカル修正と追加で大規模な(数千のソースファイル)パブリックプロジェクトを使用しています。ローカルの変更は、大きなプロジェクトの他のユーザーには関係ありません。プロジェクトはsvnを使用し、私たち自身のプロジェクトにも使用します。プロジェクトが更新されたときに更新を取得し、変更を組み込むことができるようにしたい。また、私たちの変更をソース管理下に置いておきたい。同じプロジェクトのために別々のsvnリポジトリを管理するには?

現在私は、大きなプロジェクトの作業コピーを必要に応じて更新し、変更を別のディレクトリにチェックインし、大きなプロジェクトの対応するディレクトリに変更をコピーしています。変更。それは実行可能です。大したことではなく変更されることはめったにありません。このように動作します。しかし、私たちの目的や物事がより頻繁に変化していれば、それは実用的ではありません。より良い方法がありますか?

答えて

2

実際には1つのリポジトリを使用し、既存のプロジェクトを分岐してバージョンを作成し、そのブランチを使用します。メインバージョンが変更されたときには、ブランチに更新をマージすることができます(最後にマージした後の変更のみを取得するので、2つのツリーを手動でマージする方が簡単です)

メインのレポにプロジェクトし、あなた自身を維持しなければならない場合は、svkが調べるべきものです。

0

あなたはそれについてsvkを調べることができます。しかし、それはしばらくしているので、私はあなたに詳細な呪文を与えることはできません。

1

特定の変更を行うためにブランチを作成することを検討する必要があります。ここには、svnの本のbranchingの章があります。

1

これを行う理由の詳細がわからないと、潜在的なアドバイスが制限されますが、これはSVNを使用して得られるほど良いと思います。 Gitはこのようなことを処理するように設計されていますが、大きなプロジェクトにいくつかのファイルを追加できない場合は、ソース管理システム全体を変更することはできません。

私はこれらのファイルを他の人には見せても無視する方法でトランクに追加しようとしています。たとえば、ビルドスクリプトを変更してこれらのファイルを取得するプロパティをファイル内に1つ持ち、他のすべてのユーザーに対してそれらを無視します。

関連する問題