2009-04-23 13 views
0

LLVMを新しいターゲットプロセッサに移植する予定です。私が大規模なプロジェクトに変更を加えようとしているのは初めてです。そのようなことのためのベストプラクティスは何ですか?トラッキングトランクまたは特定のブランチを使用する

私がリリース2.5ビルドに固執すると、私は自分の修正をビルドするためのベースラインを持っています。しかし、私は新しい機能とバグ修正を失うかもしれません。私がトランクを追跡すると、それは出血のエッジであるので問題を引き起こす可能性があります。不安定性やバグを招く可能性があります。

たとえば、GCCのいくつかのポートでは、特定のポイントで分岐してそこから変更を作成する傾向があります。彼らはメインラインに合併して独立してバージョンをリリースするようには見えません。他の人たちは、変更をメインラインにマージしますが、それを勤勉に維持していない可能性があります。

私は最善の方法についていくつかのアドバイスを探しています。

答えて

0

これはバージョン管理に関する質問ですか?

推奨されるベストプラクティスは、既知のポイントからブランチを取得し、そのブランチに加えられた変更をブランチに定期的にマージすることです。作業が終わったら、ブランチはトランクに簡単にマージされます(実際には、トランクと同じにする必要があります)。

トランクにブリードエッジの変化がある場合は、トランク自体をブランチにする必要があります。

これらの変更を分岐できない場合は、以前のようにブランチを定期的にブランチにマージするのがベストですが、マージすることには注意してください。すべてを取ることを心配しないでください。後で(最後のマージを行ってすべての変更を加えたことを確認するときには注意してください - その時点でトランクとファイナライズされたブランチ間でdiffを実行してください)。

+0

私が他のプロセッサ会社に見せているのは、特定のバージョンのみを移植したことです。彼らはメインラインを追跡しません。 – sybreon

関連する問題