2016-11-14 4 views
0

私は非常に小規模な会社です。私が始めたときには、ソース管理や話題の追跡が実際にはなかったので、セットアップしgitを使っています。私は現時点で唯一のソフトウェア開発者であり、残念ながら私自身のテストを行う必要があります。Gitのマージとテスト

私はgitの使い方とマスターへのマージを使ってQAテストを正しく行う方法を教えてくれることを願っていました。私は新しい機能をマスターに戻す必要があるのか​​どうかはわかりません。現時点では私のプロセスは機能が動作したら、の完全なテストを行う

  • ベンチテストだけで新機能
  • 私の新しい機能を追加し、マスター(最新のリリース)
  • から、

    1. 支店です新機能を含むすべてのソフトウェア
    2. テストが成功したら、フィーチャーブランチでバージョン番号を更新し、十分にテストされたという小さな履歴を履歴に追加します。
    3. ソフトウェアアップデートとしてmasterとreleaseに合併します。

    これは正しい方法ですか。技術的にマスターではなく、機能ブランチでテストを実行したときに、マスターを解放することに少し不快感を感じます。私はおそらく狂っているだろうが、私が言っているように、私はちょっとだけgitに新しい、これを行うための最善の方法の少し不確実です。

  • 答えて

    1

    私は技術的にマスターではなく機能ブランチをテストしていないときに、マスターを解放することに少し不快感を感じます。

    マスターへのマージが早送りとマージする場合は問題ありません。その場合、マージ前後のコードは同一です。 git merge --no-ffを使用し、ターゲットブランチ(master)に変更がない場合でも、マージはコードには触れません。 (ただし、真のマージを行った場合は、マージしたコードをテストする必要があります)。コードが変更されたときに、Gitリファレンスではなくテストする必要があります。

    したがって、git diff <tested-ref>が行を出力する場合は、コードを再度テストしてください。出力が空であれば、バージョン管理されていない重要なファイルがない限り、機能を破壊するものはありません。

    マージの詳細については、https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Mergingを参照してください。

    +0

    こんにちはメレビウス、あなたのコメントとリンクをありがとう。私はコードで作業している唯一の人だから、私のフィートをマージする前にマスターに変更はありません.ffコミットとして起こります。唯一の問題は、私がマージするときに--no-ffオプションを使うことです。私は自分のマスターが各機能の完全なコミット履歴を含むことを好む。私はそれがよりよく読むためだけでなく、必要に応じて大規模なマージコミットの個々の部分を削除することができるので、この方法を好む。 ffのコミットとして実行されたとしても、技術的にはそうではありません。マージされたブランチをテストすることをお勧めしますか? – user1649972

    関連する問題