参考にしたサイト
はじめに
今回はなんだか分かりにくいブランチの名前と種類についてメモ(浅学なので説明とは言わない)します
あと、参考にしたサイトの1番目は先に見ることをお勧めします
改修と画像も今後載せていきます
ブランチは主に3つある
- リモートブランチ
- リモート追跡ブランチ
- 追跡ブランチ
ブランチが存在する場所は2ヶ所
- リモート(ネットワーク上、オンライン上)
- リモートリポジトリともいう
- ローカル(自分のPC上)
- ローカルリポジトリともいう
組み合わせると
- リモート(オンライン上)
- リモートブランチ
- origin/ブランチ名
- リモートブランチ
- ローカル(自分のPC上)
- リモート追跡ブランチ
- remotes/origin/ブランチ名ってついている所
- 追跡ブランチ
- ブランチ名のみ
- リモート追跡ブランチ
※ ここでまたややこしいのがoriginという部分
- リモートの場所のこと
- originはデフォルトでつく名前
- 当然変更もできるけど基本そのまま行くのでコマンドの説明でもoriginが当たり前に出てきてしまう弊害がある(リモートリポジトリの場所を指定しているシーンで)
ブランチが3つあるのに対して
存在する場所は2ヶ所
個人的意訳をすると
- リモートブランチ
- GitHub上にある
- オンライン上にある
- GitHub上でブランチを切るとここが増える
- git branch -aで表示されない
- git branch -vvで表示される
- ここのデフォルトブランチがだいたいは最新の開発が反映されているブランチ
- devやdevelopと付けがち
- origin/HEADとつくところ
- GitHubでリポジトリを作成するとmainブランチが初期設定ではデフォルトになる
- (安定したプロジェクトを置くためにここからデフォルトブランチをdevelopにするととも多い)
- リモート追跡ブランチ
- 個人的に理解をややこしくしてる元凶のブランチと思う
- 超重要:ここをリモートブランチと書いている記事が非常に多い(そして間違ってるわけではないと思われるので厄介)
- リモートブランチをcheckoutすると自動で作成される
- ローカルの状態を参照していることもあればリモートの状態を参照していることもある
- ローカルにある(大事)
- リモートブランチとローカルブランチの橋渡しをしている
- ここで作業することはできない
- git branch -aで表示される
- git branch -vvで表示されない
- 追跡ブランチからpushする時にここを通ってリモートブランチに反映される
- 追跡ブランチ
- 普段自分がPCで作業するブランチ
- 一般的にはローカルブランチって言われるところ
- git branch -aで表示される
- git branch -vvで表示される
- ローカルでリモートブランチに紐付けないでcheckoutした時はリモート追跡ブランチもリモートブランチも作成されない
徐々に増やしていきます
また、間違っていれば指摘いただけると幸いです