2011-11-10 11 views
1

私たちの開発チームは既存のプロジェクトの中で動作し、完全に別々の環境に展開します。私たちがしている仕事は、決して彼らのものに合併することは期待されませんが、私たちは彼らと一線を保つことが求められています。彼らは従来のトランクブランチ(実際にはタグではありません)の設定を使用します。プロダクションリリース用にブランチが作成され、その後で開発が続行されます。がリリースされます。複雑な設定のTortoise SVNのベストdev/merge/releaseモデル

私たちのチームは、自らのリリースブランチを自分自身のトランクにコピーします(最初は、トランク/ブランチ/タグを含む)。開発の間、私たちはトランク上にあり、本番リリース用のタグ付けをしています。最新のリリースからアップデートすると、そのブランチから私たちのトランクに直接マージすることができないことがよくあります。はるかにクリーンで問題なく、ブランチから始め、私たちの仕事に合併し、最終的にはそれをトランクに改名するようです。

私はSubversionのダミーテキストジェネレータのように感じる突然...

は、我々は他のチームのワークフローを変更することはできません制約を考えると、私たちのためのより良い流れはありますか?説明に何かが足りないのかどうか教えてください。

ありがとうございました。

答えて

0

二つの主要な原則:

  • ベンダー枝
  • あなたがより合理について

    を期待通りに "地獄のマージ" を得るためのルール2の無知にしばしば

をマージワークフロー(Netのベンダーブランチについて読む、多くの情報があります)

  • は自分のトランクに上流分岐をコピーしますが、あなたレポにベンダー枝(ブランチ)を作成し、SVNでそれをリンクしない:URL内のソース・リビジョンを固定せずに元の枝に外観(、可動HEADへのリンク)モニターは、上流のレポ(SVNMonitor、CommitMonitor)に、すべてのにコミット(空の)トランク
  • から
  • コピー支店は支店があなたのトランク(SVN 1.6から1.7であなたのベンダーブランチをマージ上流へをコミット古いバージョンよりも良いでしょう)

古いブランチの外部定義を編集したり、ブランチを完全に削除したり、新しいブランチを削除したりすることができます(トランクからすべて削除する必要はなく、新しいブランチコンテンツのみをマージします)

+0

私たちは本質的にベンダーブランチを持っていますが、ブランチでマージを行います。私がベンダーブランチモデルを理解しているので、実際のブランチに触れるのではなく、それをdevラインに持ち込んで変更してください。 – Ethan

+0

それでは、このブランチを新しいトランクとしてコピーし、できるだけ履歴を保持するにはどうすればいいですか? – Ethan

+0

svn co ...できます(TBT!)コピー前のトランクツリーのすべてのconent –