バージョン管理するためには、リポジトリにコミットして変更データを登録する必要があります
ここでは、ブランチを知った上でコミットを使ったほうが、Git が理解しやすくなると思いますので先にブランチを紹介します
ブランチって何? と思うかも知れませんが、Gitを使うには避けては通れません (^^)
ブランチとは、あるコミット履歴位置からブランチ(枝分かれ)させて、他のブランチに影響を与えないバージョンを作成作成するための仕組みです
この機能により、複数の機能追加を別々のブランチで分散して行い、後で統合することも出来ますし、機能に違いを持たせた複数バージョンを別々に管理していくことも出来ます
追跡ブランチ
前回の作業でローカルリポジトリを作成した時の最初のコミットで、既にローカルブランチ master とリモートブランチ origin/master の名前がデフォルトで作成されています
この一番最初に自動的に作成されるブランチを master ブランチといいます

ここで大切なのは、ローカルリポジトリの master ブランチは、リモートリポジトリの origin/master ブランチに関連付けられている追跡ブランチとなっていることです
追跡ブランチとは、リモートブランチと関連付けされているローカルブランチのことで、ブランチ間の同期をとるためのマージやプルコマンドの対象ブランチとして設定されているローカルブランチのことです
ブランチには3種類あることを意識して下さい
リモートブランチ(リモートリポジトリで共有されているブランチ)
追跡ブランチ(リモートブランチに関連付けられたローカルブランチ)
ローカルブランチ(自分専用の作業用ローカルブランチ)
また、リモートブランチは共有されているので、追跡ブランチとは、1対複数 の関係になります。誰か他の人がいつ内容を更新しているかわかりません。追跡して内容を最新状態に保つことが大切です
特に master ブランチは、最新のメインバージョンを管理する役割がありますので、共有されている一番大切なデータを操作しているということを自覚することも大切です
何か作業が必要なときは、直接 master ブランチで作業しないことがお勧めです
作業用ブランチの作成
master ブランチに限った話ではありませんが、リモートリポジトリ上のブランチに対して、機能の追加や修正を行う時は、そのブランチの追跡ブランチを操作するよりも自分専用の作業用ローカルブランチを作成して作業します
自分一人だけで使用している範囲ではあまり関係ないかも知れませんが、普段から自分専用のブランチを作成して作業する癖をつけておけば、複数人で作業するときにトラブルになりにくくなります (^^)
さっそく作業用にブランチを作成してみます
作成

どこにブランチを作成するかを指定します
作業コピーの親 : 現在のブランチ(HEAD)位置にブランチが作成されます
指定のコミット : 作成位置を選択する画面が表示されるので位置(コミット)を選択
新規ブランチを作成してチェックアウト をチェックするとブランチ作成後、そのブランチにチェックアウト(切り替え)します
作業コピーの親に develop1 ブランチを作成してみます

何が行われたかというと、指定したコミット位置にブランチ名が設定されただけです。
コミットしてバージョン管理データに差異が生じることで枝分かれした樹形図として表示されます
Develop1 にコミットしてみます
ちょっとわかりづらいですが master の先に develop1 が分岐しています

もう一つ develop2 ブランチを作成してコミットしてみます
この状態で master, develop1, develop2 3つのローカルブランチがあります

ブランチの削除

現在のブランチ以外のブランチを削除することが出来ます
確認を求められるので、削除するならOKをクリックします

※現在のブランチを削除しようとするとエラーとなります

この場合は、チェックアウトで現在のブランチを切り替えてから削除を行います
ブランチは、難しそうと感じるかも知れませんが、慣れれば、ブランチなしでは作業できなくなると思います
追跡ブランチと作業ブランチを使い分けることがポイントです
機能の追加変更時は、ブランチを作成して試してみて、必要ならマージ、不要ならブランチ削除なんてことが手軽に行えます (^^)
ここでは、ブランチを知った上でコミットを使ったほうが、Git が理解しやすくなると思いますので先にブランチを紹介します
ブランチって何? と思うかも知れませんが、Gitを使うには避けては通れません (^^)
ブランチとは、あるコミット履歴位置からブランチ(枝分かれ)させて、他のブランチに影響を与えないバージョンを作成作成するための仕組みです
この機能により、複数の機能追加を別々のブランチで分散して行い、後で統合することも出来ますし、機能に違いを持たせた複数バージョンを別々に管理していくことも出来ます
追跡ブランチ
前回の作業でローカルリポジトリを作成した時の最初のコミットで、既にローカルブランチ master とリモートブランチ origin/master の名前がデフォルトで作成されています
この一番最初に自動的に作成されるブランチを master ブランチといいます

ここで大切なのは、ローカルリポジトリの master ブランチは、リモートリポジトリの origin/master ブランチに関連付けられている追跡ブランチとなっていることです
追跡ブランチとは、リモートブランチと関連付けされているローカルブランチのことで、ブランチ間の同期をとるためのマージやプルコマンドの対象ブランチとして設定されているローカルブランチのことです
ブランチには3種類あることを意識して下さい
リモートブランチ(リモートリポジトリで共有されているブランチ)
追跡ブランチ(リモートブランチに関連付けられたローカルブランチ)
ローカルブランチ(自分専用の作業用ローカルブランチ)
また、リモートブランチは共有されているので、追跡ブランチとは、1対複数 の関係になります。誰か他の人がいつ内容を更新しているかわかりません。追跡して内容を最新状態に保つことが大切です
特に master ブランチは、最新のメインバージョンを管理する役割がありますので、共有されている一番大切なデータを操作しているということを自覚することも大切です
何か作業が必要なときは、直接 master ブランチで作業しないことがお勧めです
作業用ブランチの作成
master ブランチに限った話ではありませんが、リモートリポジトリ上のブランチに対して、機能の追加や修正を行う時は、そのブランチの追跡ブランチを操作するよりも自分専用の作業用ローカルブランチを作成して作業します
自分一人だけで使用している範囲ではあまり関係ないかも知れませんが、普段から自分専用のブランチを作成して作業する癖をつけておけば、複数人で作業するときにトラブルになりにくくなります (^^)
さっそく作業用にブランチを作成してみます
作成

どこにブランチを作成するかを指定します
作業コピーの親 : 現在のブランチ(HEAD)位置にブランチが作成されます
指定のコミット : 作成位置を選択する画面が表示されるので位置(コミット)を選択
新規ブランチを作成してチェックアウト をチェックするとブランチ作成後、そのブランチにチェックアウト(切り替え)します
作業コピーの親に develop1 ブランチを作成してみます

何が行われたかというと、指定したコミット位置にブランチ名が設定されただけです。
コミットしてバージョン管理データに差異が生じることで枝分かれした樹形図として表示されます
Develop1 にコミットしてみます
ちょっとわかりづらいですが master の先に develop1 が分岐しています

もう一つ develop2 ブランチを作成してコミットしてみます
この状態で master, develop1, develop2 3つのローカルブランチがあります

ブランチの削除

現在のブランチ以外のブランチを削除することが出来ます
確認を求められるので、削除するならOKをクリックします

※現在のブランチを削除しようとするとエラーとなります

この場合は、チェックアウトで現在のブランチを切り替えてから削除を行います
ブランチは、難しそうと感じるかも知れませんが、慣れれば、ブランチなしでは作業できなくなると思います
追跡ブランチと作業ブランチを使い分けることがポイントです
機能の追加変更時は、ブランチを作成して試してみて、必要ならマージ、不要ならブランチ削除なんてことが手軽に行えます (^^)

コメントをかく