SVNワークフロー-鶏前の卵前の融合V1とV2、必要なコードV1作V2
-
26-09-2019 - |
質問
当社の分散チーム(3内♪3+外♪)の使用SVNの管理当社のコードベースのためのウェブサイトです。お店のために各マイナーバージョン(4.1.0,4.1.1,4.1.2など)です。してトランクした統合の各バージョンのきいリリース、出版社のサイトです。
の問題についてはこのように:新しい機能を追加しょう"と呼んでいる能力プロジェクトの作成"を4.1.1.もう一つの特徴に依存するの4.1.1する予定で4.1.2と呼ばれる"能力の追加課題-プロジェクト"です。
なので、月曜日において4.1.1は'closed'-ニーズへの試験を実施します。当社のリモート通常は特徴/チケットのための4.1.2ます。期間中は、また試験4.1.1修ンドユーザーからの質問等およびコミットしてきた4.1.1.その後、金曜日またはこれらの状況を踏まえ,タグ4.1.1、追加での幹線、最後に合併し4.1.2.ですが、4~5日間のお試4.1.2ないコードから4.1.1の新しい機能のための4.1.2あります。
でdev者の追加は、"追加タスクのプロジェクト"の機能を持っていないので"能力プロジェクトを作成するには"機能の構築に、いくつかのファイルのコピーを理を主に取り上げ、その犯罪心理するで働くことができます。
かべました。
P.S.おればこの質問は、お問い合わせいただく前に-I かった 検索んかもやってみたいです。
解決
私たちはそれを行う方法は、そののすべてのの開発がトランクに起きています。あなたも、トランクにコミットするだけで、その後4.1.1 GETはのトランクからの4.1.1ブランチからをマージするために任意の修正が必要。 4.1.2のための分岐が唯一の4.1.2でのテストが開始されたときに作成される - 4.1.2分岐が行われた後、作業がトランクに続け、任意の修正は4.1.2に必要とされている場合、彼らはトランクに行われ、その後にマージされています4.1.2ます。
それは私たちが今までニーズをマージすることをブランチに変更を行うことは非常にまれです。のバックのトランクに(またはどこか他の、本当に)。
他のヒント
音などが必要になり支店Xに基づく幹線、支店Yに基づくX
の開発を行うことができます特徴として、始められるようになっています。さらに、コピー Xの新たな支店Yを第二の特徴である。
最終的にXが合併し幹と発表しました。それが作Y、合併時代に突入したと言われていXのための試験、そしてその後は幹線です。
できるこのプロセスを繰り返し後のご注意:写真はセンサ全体を表示して公開された。オリジナルポストカードに仕上げが特徴で、ビルドすので、併合時代に突入したと言われていY.
いておくことが重要なのはっきり言ってください
- い通常の合併から幹線をX、X Y.
- い復帰が合併からXへの幹線からYへX.
- した後、復帰クトに必要なもの ブロックのコミット から合併に戻X.
- 後の復帰に融合すX、ブロックのコミットから合併に戻Y.
- くなる特徴がある支店そうでない場合、こで混乱します。
私はどこか別の場所にそれらを置くための理由がありますしない限り、すべての新しいコミットがトランクに入るだろう。 4.1.1および4.1.2のための異なるブランチを作成することにより、例えば、あなたの例では、最高の、その後トランクにマージされたバックかもしれませんどちらの枝の間のマージを行うことにより近づいています。ウエッ!それのが私の意見では、地獄をmergeinfoます。
ここでは、Subversionの本からいくつかの基本的なアドバイスです
http://svnbook.red-bean.com /en/1.5/svn.branchmerge.commonpatterns.htmlする
私はそれを行うには、いくつかの方法があると思います。
トランクは常に安定していることをしかし、私の練習。 いいえ未完成 - 不安定なコードをトランクに入るべきではありません。そこに追加される新機能があり、それは多分週、日を要する場合は、その後、私はそれのためのブランチを作成します。それが行われ、分岐が安定したようで、テストされた場合、それが再びトランクにマージされます、そしてブランチが削除されます。
この方法では、トランクは安定したままになります。そして、実験的なコードでは、私はいつもブランチです。
もしI何らかの理由で変更のための私の心と半分完了プロジェクトをスキップするには、私はトランクを考えるために持っていけません。私は単にブランチを削除する....
一つのアプローチは、4.1.1から代わりのトランク(もちろん4.1.1トランクからの)から枝4.1.2にある。
あなたは、簡単に定期的に、まだ解放する時間である場合に、各ブランチのためにトランクに些細なマージバックを行うことができる4.1.2に4.1.1をマージすることができます。