0122takato
@0122takato (Takato Araya)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

GitHubとソースツリーのブランチについて

GitHubでのブランチについて

今現在GitHubを使ってサーバーにアップしていこうと勉強中なのですが、下記の違いについてわからないことがありましたので、投稿しました。

発生している問題・エラー

スクリーンショット 2021-12-13 15.56.28.png
上記のようにソースツリーで確認すると何をもとにブランチが分かれているのかがわかりません。

自身のGitHubのページにいくとmainブランチでの作業はしておらず、ブランチにあった場所で作業はできていましたが、なぜかソースツリーではmainブランチで作業してるような気がします。

これは何が原因なのでしょうか。

2

7Answer

https://github.com/0122takato/firstVue このリポジトリのようですね。

何をもとにブランチが分かれているのかがわかりません。

「何をもとにブランチが分かれているのか」という意味がよく分かりませんでした。「どのコミットからブランチが分岐しているのか」という意味なら、グラフに表示されているとおりです。

自身のGitHubのページにいくとmainブランチでの作業はしておらず、ブランチにあった場所で作業はできていましたが、なぜかソースツリーでは上記の画像のようにうまくいっていないうような気がします。

GitHub では main ブランチの内容が表示されているようですが。また「ブランチにあった場所で作業はできていましたが」とはどのブランチのことですか?

画像にはおかしなところは見当たりません。うまくいっていないとはどういうことか、うまくいった状態ではどうなっていてほしいのかを補足していただけると助かります。

0Like

Comments

  1. @0122takato

    Questioner

    画像を貼り付けたかったので、投稿で説明させていただきました。
    お手数ですが、ご回答していただけると嬉しいです。

説明が下手くそなので、下記の説明で理解いただけると嬉しいのですが、、、

わからない点に関してですが、他のリポジトリで説明します。
ソースツリーではmainブランチで操作しているように見えるのですが、これはlesson2というブランチで僕は処理していると思っています。
GitHubのページにもlesson2のページを見てみると、mainブランチのページではなく、lesson2ブランチに更新されていくので、しっかり切れているとは思っています。

ですが、ソースツリーで見ると分岐されるようなグラフが出てこないのはなぜでしょうか。

そもそも根本的に色々間違っているかもしれないでの、教えていただきたいです。
スクリーンショット 2021-12-13 19.00.39.png

0Like

ソースツリーではmainブランチで操作しているように見えるのですが、これはlesson2というブランチで僕は処理していると思っています。

Sourcetree では、現在チェックアウトされているブランチの先頭は白丸で表示されます。自分の環境で撮ったスクリーンショットを以下に貼ります。一番上の master がそれですね。

スクリーンショット 2021-12-13 19.33.38.png

ですので、そちらのスクリーンショットは現在 lesson2 では作業していないことを表しています。

分岐されるようなグラフが出てこないのはなぜでしょうか。

ブランチを作っただけではグラフは分岐しません。ブランチを作るとは、木の幹でたとえれば、幹のどこかに「ここから新しい枝を生やすつもりだよ」とラベルを貼った状態にすることです。この時点で木はまだ枝分かれしていませんね。枝を実際に生やすことで(=ブランチに何か変更をコミットすることで)初めてグラフが分岐します。

0Like

Comments

  1. @0122takato

    Questioner

    また投稿で返信させていただきました。
    GitHubに対する理解が不十分すぎて、申し訳ないですが、ご回答いただけると嬉しいです。

スクリーンショット 2021-12-13 20.10.27.png
それではこれは今asgmt4ブランチとmainブランチの両方で作業しているということですか?

0Like

それではこれは今asgmt4ブランチとmainブランチの両方で作業しているということですか?

複数のブランチで同時に作業中になることはありません。 Sourcetree のグラフ表示では見分けが付きませんが、 asgmt4 か main のどちらかで作業しています。

作業中のブランチ名はサイドバーで丸つきの太字になります。たとえば以下では master で作業中です:

スクリーンショット 2021-12-13 20.24.28.png

0Like

Comments

  1. @0122takato

    Questioner

    返信させていただきました

スクリーンショット 2021-12-13 21.29.39.png
なるほど。。。
ブランチは作成しているが、作成したブランチで作業できていないということがわかりました。

そしたら気になることがあって。。。

なぜこのchap2は分岐されるグラフにならないのでしょうか。。

下記の画像を見て貰えばわかると思うのですが、chap2フォルダがあるかないかでしっかりブランチが切れてるか切れてないかがわかると思うのですが、これはchap2フォルダで作業できているという認識であっていますか?
スクリーンショット 2021-12-13 21.30.01.png

スクリーンショット 2021-12-13 21.29.56.png

0Like

これはchap2フォルダで作業できているという認識であっていますか?

合っています。

なぜこのchap2は分岐されるグラフにならないのでしょうか。。

main から chap2 が分岐したように表示されないのはなぜか、ということですね? それは……枝分かれしていないからです。同じ事を言うようですが。

今度はレゴで作った木のてっぺんに main と chap2 というラベルを貼ったところを想像してください。ブロックを上に積み重ねて幹を伸ばすたび、 chap2 を新しいてっぺんの位置に貼り替えていき、 main は前と同じ高さに残った。これが今のグラフの状況です。木が伸びただけで新しい枝が生えたわけではありませんね。

0Like

Comments

  1. @0122takato

    Questioner

    なるほど。。
    ということは、本来のブランチの使い方はできていないということでしょうか。
  2. もともと Git のブランチは分岐だけを表すものではありません。上のたとえで言ったように、特定のコミットに貼ったり貼り替えたりできるラベルのような存在です。その意味では、 main と chap2 のように1本の幹の途中と先端にブランチが存在する状況も、本来の使い方に含まれます。
  3. @0122takato

    Questioner

    なるほど!
    ありがとうございます!
    二日間にわたって教えていただきありがとうございました!

Your answer might help someone💌