08-Git&GitHUb

バージョン管理(Part.12~Part.21)【GitHub(Part.19)】|共同編集で気を付けるブランチ運用 | 現役エンジニア&プログラミングスクール講師

バージョン管理【Git と GitHub】まとめ|現役エンジニア&プログラミングスクール講師「Git」と「GitHub」のまとめページです。Git、GitHubに関する記事を時系列でまとめています。まとめページの下部には「おすすめの学習書籍」「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...

バージョン管理(Part1~Part.11)【Git編】の記事はAmazon kindle Unlimited(電子書籍)での販売となります。howahowablog.comではPart.5/10/11のみ試し読み可能となります。

バージョン管理(Part12~Part.21)【GitHub編(前編)】の記事はAmazon kindle Unlimited(電子書籍)での販売となります。howahowablog.comではPart.15/19のみ試し読み可能となります。

バージョン管理(Part21~Part.30)【GitHub編(後編)】の記事はAmazon kindle Unlimited(電子書籍)での販売となります。howahowablog.comではPart.24/30のみ試し読み可能となります。

「Kindle Unlimited」にご登録の方はキャンペーン価格で電子書籍の購入が可能です。

「Kindle Unlimited」の
無料トライアルはこちら

目標

ブランチの設計と運用の注意点を理解する。
「mainブランチ (masterブランチ)」・「developブランチ」について理解する。
「featureブランチ」・「releaseブランチ」・「hotfixブランチ」について理解する。

ブランチの設計と運用の注意点

ブランチの設計と運用の注意点

Gitはローカル環境にリポジトリを作成して、それらを柔軟に切り替えて開発ができるツールです。ただし、共同開発を行う場合、その運用方法は粒度だったり、手法だったりをある程度、統一する必要があります。

どのブランチで、どんな作業を行うのかを明文化したり、誰がいつマージ作業を行うのか決めておきます。統一がされていない運用ではトラブルが多発し、作業時間のロスにも繋がります。

Gitには「git-flow」というブランチモデルがあり、これに沿った「git-flow」プラグインがあります。

git-flowのメインブランチとサポートブランチ

git-flowのメインブランチとサポートブランチ

「git-flow」を用いたブランチの運用では「メインブランチ」と「サポートブランチ」と呼ばれるブランチを準備して開発を行います。

  1. メインブランチ削除はしない保管用のブランチです。このブランチでは開発は行わず、サポートブランチで出来上がったものをマージしていきます。
  2. サポートブランチ…メインブランチから派生させた開発・バグ修正で利用するブランチです。マージ後は削除します

git-flowでのメインブランチ

mainブランチ (masterブランチ)

常に安定版のソフトウェア(プログラム)が存在するブランチです。開発途中のブランチをマージすることはありません。(安定版に相当しますが、バグなどが紛れていることも十分にあります。)

後で出てくるサポートブランチのうち、「featureブランチ」についてのマージは基本的に「developブランチ」のみに行われます。

※mainブランチから他ブランチへのマージは基本的に行いません。

developブランチ

マイナーアップデートが終わている安定版のソフトウェアが存在するブランチです。こちらも開発途中のブランチをマージすることはありません。このブランチの派生元はmainブランチとなります。(このブランチも安定版に相当しますが、バグなどが紛れていることも十分にあります。)

※「developブランチ」ではチーム開発の最新の状態が維持されます。

※「mainブランチ」と「developブランチ」が直接やり取りされることはありません。

git-flowでのサポートブランチ

featureブランチ

新機能を開発する時に利用するブランチです。設計書にない突発的な開発はこのブランチでは行いません。このブランチは「developブランチ」からの派生でマージも「developブランチ」へ行います。マージ終了後は「featureブランチ」は削除します。

releaseブランチ

「featureブランチ」で開発が終わってマージ作業の終了した「developブランチ」からの派生です。ここ以降でリリースに向けたバグ修正やリリースのためのバージョン番号のアップデートなどを行います。作業終了後は「mainブランチ」と「developブランチ」の両方にマージして「releaseブランチ」は削除します。

hotfixブランチ

稼働中のシステムにバグが存在した場合に、そのバグの修正などを行うためのブランチです。現在稼働中のシステムなのでメインブランチから派生させます。作業終了後は「mainブランチ」と「developブランチ」の両方にマージして「releaseブランチ」は削除します。

今回は以上になります。

「Git・GitHub」おすすめ書籍6選+α【初心者用4冊&実践用2冊&番外編1冊】| 現役エンジニア&プログラミングスクール講師「Git・GitHub」初心者の方がGitの操作を理解するためのお勧めの書籍について取り上げています。また中級者の方が更に進んだ学習ができる実践的な書籍についてお勧めできる2冊を取り上げています。ページの下部には「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...

ブックマークのすすめ

「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】について解説している記事です。削除方法も掲載しています。...
【パソコン選び】失敗しないための重要ポイント | 現役エンジニア&プログラミングスクール講師【パソコン選び】失敗しないための重要ポイントについての記事です。パソコンのタイプと購入時に検討すべき点・家電量販店で見かけるCPUの見方・購入者が必要とするメモリ容量・HDDとSSDについて・ディスプレイの種類・バッテリーの持ち時間や保証・Officeソフト・ウィルス対策ソフトについて書いています。...
RELATED POST
08-Git&GitHUb

Version Control Git (Part.12~Part.21)[GitHub(Part.19)]|How Branches Operate in Collaborative Editing

2024年4月13日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
08-Git&GitHUb

「Git・GitHub」おすすめ書籍6選+α【初心者用4冊&実践用2冊&番外編1冊】| 現役エンジニア&プログラミングスクール講師

2024年7月7日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
08-Git&GitHUb

Version Control Git (Part1-Part.11) [Git (Part.5)] | Overview of "A Directory Managed by Git" and "Three Areas"

2024年3月17日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
08-Git&GitHUb

バージョン管理(Part1~Part.11)【Git編(Part.11)】|「.gitignore」「.gitignore_global」の設定(Gitに管理させないファイルの設定)| 現役エンジニア&プログラミングスクール講師

2024年1月30日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
08-Git&GitHUb

バージョン管理(Part.12~Part.21)【GitHub(Part.15)】|ローカルリポジトリとリモートリポジトリの同期 | 現役エンジニア&プログラミングスクール講師

2024年1月31日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
08-Git&GitHUb

Version Control Git (Part.22~Part.30)[GitHub(Part.30)] | Completing the Sample Site(3)

2024年6月6日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site