2016-09-18 12 views
2

以下のような構造を持つGitプロジェクトの4つのブランチを維持しています。お互いに依存する複数のgitブランチの作業

  • マスター
  • 学生
  • 教師の問題は、私は "認証" 分岐が最後に作成され、このブランチからいくつかのコードを追加している

  • 認証。さて、私は "教師"ブランチに切り替えて作業を続けました。しかし、私は "教師"モジュールで動作するために "認証"モジュールに追加したいくつかの機能が必要です。しかし、私はマージを行うための "認証"モジュールの作業を完了していません。 gitでこれを処理する正しい方法は何ですか?ありがとう。

  • +0

    'PR'または' master' 'へauthentication''からrequest'を引いを提出してください。 PRを '認証'から 'マスター'に承認し、 'マスター'から '教師'に最新のものを引き出します。 –

    +0

    "teacher"ブランチは "master"より先です。 「マスター」から「教師」に引き寄せるのは大丈夫ですか? – swdon

    +1

    'authentication'ブランチから' teacher'ブランチにコミットすることができます。 – dangom

    答えて

    3

    あなたのブランチのようなサウンドはお互いに依存しており、これが問題の原因です。支店の成立は、支店の規模が大きくなったり、余りにも多くのものが含まれていることによって引き起こされる可能性があります。

    これは、以前の小さなものをマージすると恩恵を受けることができるということです。しかし、いずれかが完了する前にteacherまたはstudentをマスターにマージしたくないようです。

    のようなサウンドは、完了した作業はマージできますが、リリースの準備ができていない可能性があります。

    masterは、完成した機能しかないブランチであると考えている場合は、developと呼ばれる別のブランチが必要ですが、全体的な機能を持たせることはできませんが、 、student関連の機能のために新鮮な枝を開始

  • develop
  • にそれらをマージし、 teacherに関連するいくつかの機能を行う

    • すぎ
    • 繰り返しを開発するためにそれらをマージ:

      次に、あなたのような何かを行うことができますこれまでdevelopまでは

    • マージdevelopmasterのようになり、新しいリリース

    これは、teacherの作業中にシステムの改善が行われた場合でも、studentの作業中にすぐに利用できることを意味します。同じことが認証などの他の機能にも当てはまります。

    フィーチャーブランチを数日以上結合解除しないようにしないでください。
    未処理の作業は無駄です!

    もっと読み:A successful Git branching model

    +1

    ありがとうございました。私はGitのベストプラクティスについてこのような明確な説明ができることを願っていました。 – swdon

    関連する問題