質問: ### 前提・実現したいこと Gitのブランチからブランチを作成 ### 発生している問題・エラーメッセージ ``` $ git branch -a eda *master remotes/origin/HEAD -> origin/master remotes/origin/eda remotes/origin/master という状態で、 $ git checkout eda $ git checkout -b koeda origin/eda と打てば、以下のようなブランチの構造になると考えているのですが、 origin/master : A ⇨ B origin/eda : ⇩ ⇨ C origin/eda/koeda : ⇩⇨ D $ git push origin koeda をした後に、 $ git branch -a とすると、 remotes/origin/HEAD -> origin/master remotes/origin/eda remotes/origin/koeda remotes/origin/master となり想像していたものと違って以下のような構造になっていると考えています。 origin/master : A ⇨ B origin/eda : ⇩⇨ C origin/koeda : ⇩⇨ D これは"eda"というブランチから新しい"koeda"というブランチを作れているのでしょうか?それともこの状態で origin/eda/koeda というのは実現されているのでしょうか ``` ### 該当のソースコード ``` ここにご自身が実行したソースコードを書いてください ``` ### 試したこと $ git push origin koeda の部分でoriginにしたのが原因なのではないかと思い、 $ git push origin/eda koeda $ git push origin/eda/koeda koeda を試してみましたがpushができませんでした。 表示されたのは以下です。 fatal: 'origin/eda' does not appear to be a git repository fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. ### 補足情報(言語/FW/ツール等のバージョンなど) より詳細な情報
回答: > > それともこの状態でorigin/eda/koeda というのは実現されているのでしょうか > > > はい。 "eda"ブランチを元に"koeda"ブランチを作成した場合、"koeda"ブランチは、その時点で"eda"が指していたコミットIDを親にしたブランチになります。しかし作成されるブランチ名は"koeda"です。 gitにおいてはブランチは単にコミットIDを指し示す名前でしかないため、階層では管理されません。よって"koeda"ブランチを作成した際に自動的に"eda/koeda"のようなブランチ名が付くことはありません。