この記事では、gitflowダイアグラムとそのブランチとは何か、その例、またgitflowダイアグラムをどのように作成するのかについて考えます。また、複雑なシステムを扱う際にチームのgitflowダイアグラムを作るための一流のソフトウェアであるEdrawMaxを見ていきます。
Part 1: gitflowとは?
gitflowは、作業をブランチとそのサブブランチにシンプルに組織化しています。ソフトウェア開発会社において複雑な開発ワークフローをきちんと処理することは、数人のデベロッパーが何人もいるチームにとって極めて重大です。この状況に取り組むことを目的に、このようなチームは開発を計画・構成し、新しい変更を管理し、より生産的に運営するためにブランチングの技術をよく使用します。
gitflowダイアグラムは、チームが可能なワークフローの戦略を精密に計画を立てて説明し、ワークフローの手順を実行する前に同意やフィードバックを得るために使用することができます。また、gitflowダイアグラムは、実際の手順がその開発チーム全体にどのように実施されるかを示すためにも使用できます。
Part 2: gitflowダイアグラムのブランチ
2.1 メインブランチ
gitflowダイアグラムのメインブランチは、リリースが可能なProduction-ready(生産準備完了)のコードを維持するためのものです。これは、あらゆるプロジェクトの開始時点において作成することができます。適切な点検とテストの後、他のブランチはメインブランチにマージされます。そのブランチには、異なるバージョンまたはそのコードのリリースを表すために、様々なコミットにおいて印をつけることができます。
2.2 develop(開発)ブランチ
developブランチはプロジェクトの開始時に生成され、開発プロセスの期間中最新に維持されます。これには、生産前のコードや、テストされている最中の新たに開発された特徴が含まれます。新しい特徴はそのdevelopブランチを基礎とし、その後それらのテストの準備ができたときにまた再びマージされます。
2.3 サポートブランチ
また、gitflowダイアグラムにはサポートブランチもあり、これには以下の3つのタイプがあります。
• featureブランチ
gitflowダイアグラムにおけるfeatureブランチは、開発者がそのコードに何らかの新しい特徴を追加するときに使用されます。新しいパートに取り組んでいるとき、developブランチとは別にfeatureブランチを作成し、その後そのパートが終了して検査されたら、その変更をまたdevelopブランチにマージしてください。
• releaseブランチ
新製品のリリースを作成するときreleaseブランチが使用されます。一般的には、マイナーなバグの修正や、新しいコードのリリース及びメインのdevelopmentブランチと別途処理されるコードに特定の最終調整から成るreleaseブランチに取り組んでください。
• hotfixブランチ
hotfixブランチは、gitフローにおいてメインブランチにおける緊急の変更を処理するために使われます。メインブランチはhotfixブランチの基礎として機能し、これはメインブランチと作成されたdevelopブランチの両方に再度マージされます。その調整 が次に展開されたときメインブランチに留まることを保証するために、そのhotfixブランチからの変更がdevelopブランチに再びマージされることは極めて重要です。
Part 3: gitflowダイアグラムの例
gitflowモデルがどのように機能するかについて、例を使って理解しましょう。
例1:git flowのプロセス
あなたがソフトウェア開発会社で働いていて、あなたの上司があなたにタスクを割り当てたので、現在あなたのチームメンバー全員がdevelopmentブランチに取り組んでいると仮定してみましょう。その課題用にdevelopブランチから直接featureブランチを作成してください。修正が終わったら、その特徴をdevelopmentブランチに統合してください。メインブランチはデプロイメントマネージャによってdevelopmentブランチにマージされます。プロダクションサーバーそのメインブランチを使用します。
例2:git flowモデル
この例において、hotfixはメインブランチに直接適用されます。この構造は、自動ナイトリービルドのためのブランチや、開発者のプライベートなブランチと並行して機能するような特徴を含み、RC(訳注:release candidate)ビルドが実施された後に何が起こるかを示します。見てわかるように、デベロップメントのブランチの方法は非常に複雑になる場合があります。視覚化されればこれらはずっと理解しやすくなります。
例3:git ワークフローダイアグラム
この例において、hotfixブランチは製品リリースに速やかにパッチを適用するために使用されます。メインから直接分岐する唯一のブランチはこれです。そのパッチは、できる限り早くメインとdevelopの両方にマージされなければならず、メインは更新された番号と一緒に分類されます。
Part 4: オールインワンのgitflowダイアグラムメーカー
もしあなたが初心者なら、使えるgitflowダイアグラムメーカーをその機能性を知らずに使おうとしたら困るでしょう。EdrawMaxは、gitflowダイアグラムを作るためのツールを考える際には完璧な選択でしょう。このソフトウェアは、WindowsやMac、LinuxなどあらゆるOSをサポートしています。ユーザーはこのソフトウェアに素早くアクセスして簡単にgit flowダイアグラムを作ることができます。EdrawMaxを使えば、何千もの設計済みのテンプレートを使って280以上のダイアグラムを作成することができます。そうすれば、自分のプロジェクトのダイアグラムの必要性に合わせてテンプレートをカスタマイズすることができます。
まとめ
gitflowダイアグラムは新規の開発をリリースされたプロジェクトと切り離すことができるので、開発を並行して行うのは、gitflowダイアグラムを使えばより管理しやすくなります。新しい作業はfeatureブランチで行われ、開発者がそのコードに納得すれば再度マージされます。そのプロジェクトのあらゆるバージョンに取り組むことができます。したがって、開発者は自分のプロジェクトのために効率のいいgitflowダイアグラムを作る必要がありますが、これはEdrawMaxを使えば簡単に作成できます。これは何千ものテンプレートとわくわくするような特徴で充実したソフトウェアです。ユーザーは自分のためのカスタマイズ可能なgit flowダイアグラムを手に入れることができます。
EdrawMaxはgitflowダイアグラムを書くためのオールインワンな作図ソフトです。EdrawMaxは無料ダンロードできるので、ぜひ一度お試してみてください!