2011-06-27 10 views
2

私たちはPerforceであらゆるフィーチャープロジェクトの新しい一時ブランチを作成するワークフローを調査しています。プロジェクトが安定していると、それらはメインブランチに統合されます。行の下に、古いプロジェクトブランチをリポジトリから削除したいと考えています。しかし、私はこれもブランチで修正されたファイルのすべての改訂履歴を削除すると考えています。プロジェクトブランチの改訂履歴をメインブランチに統合することは可能ですか?改訂履歴をPERFORCEに統合することはできますか?

私が考えてきた解決策の1つは、コードをメインブランチにマージするときに、手動で個々のチェックインを統合することです。これは正しいアプローチのようには見えません。

答えて

4

適用されているブランチに対して保存されているリビジョン履歴で、マージすることはできません。プロジェクトチェンジからの各チェンジリストの統合についてのあなたの考えはうまくいくでしょうが、あなたが指摘したように痛みです。

+0

これは私が恐れていたものです。ご協力ありがとうございました。 – jebcor

2

私は長年に亘って分岐を頻繁に使用していましたが、私たちがメインラインにブランチの改訂履歴を持っていたかったのか、ブランチの後のブランチの改訂履歴を見たメインラインに合併しました。

マージ後にしばらくの間、利用可能な改訂履歴があります(そして、理想的にはメイン開発ブランチにチェックインしたものはすべての単体テストに合格するため、を破る可能性があります)を最小化する必要があります。

+0

一般に、回帰を調べるときにファイルのリビジョン履歴を確認します。また、私たちの内部バグ追跡システムは、特定の不具合を、バグを導入したチェンジリスト番号と問題を解決する番号に結びつけています。 – jebcor

+0

@jebcor - 良い点ですが、バグは、ブランチへのチェックインではなく、マージチェックによって解決されるべきです。 – ChrisF

+0

このアプローチの問題は、すべてが単一のチェンジリストに関連付けられている多くのバグに終わることです。可能であれば、よりきめ細かなアプローチが好まれます。一般的に、私たちはP4の管理方法の外で考えなければならないことをいくつか提起しました。どうもありがとう。 – jebcor

0

まず、なぜリポジトリからブランチを削除したいのですか?あなたはパフォーマンスに影響を与える(または期待する)ために複数の支店を持っていることに気づいていますか?それぞれの「一時的な」ブランチについて、メインラインのコピー全体を取っていますか?また、なぜこれらの支店が「一時的」だと思っているのですか?私はそれらが機能のためであると主張します。

読むためにいくつかの記事:
- P4 KB Sparse Branching
- P4 Blog: Perforce Anti-Patterns Over-Branching

私はあなたができることを、より多くの情報を知らなくても、信じて:、スパース分岐を使用する恒久これらの「一時的な」枝を作り、本当にあなたの場合一時的なブランチを作成する必要があります。それぞれの開発者のために私設のブランチを作成します。

関連する問題