// 下階層用テンプレート #topicpath ---- //ここにコンテンツを記述します。 #contents 絶賛お勉強中のGitについてですが、今回整理したいのはいわゆる git push origin master のorigin や git branch --set-upstream-to origin/master にでてくる origin/master 、ローカルブランチとリモートブランチなどの件です。 オリジンってなんなのとか、 スラつけて書いたり書かなかったり、なんてのがとてもややこしいですよね。 ここでは、git clone してから git push するまで、どのようなことが起こっているかを整理しつつ、originとか origin/master とかってナンなのってのをまとめたいと思います ** git clone [#a9d81a8a] まず git clone したとき、ローカルのディレクトリには - いわゆるローカルブランチ master - リモートのリポジトリを参照する リモートブランチ origin/master が作成されます。origin/master はサーバにあるブランチだと漠然と思っていたのですが、どうもリモートのリポジトリのブランチを指し示す特別な、 'ローカルの' ブランチのようです。このことをリモートブランチと呼んでたりするんでややこしいです。 #ref(01.png) この「origin」には cloneした先のリポジトリサーバのURLが自動的に設定されていまます。 $ git config --list .... remote.origin.url=https://github.com/xxxx/hello.git こんな感じです ちなみに、このリモートリポジトリのサーバ名は自由に追加することができます $ git remote origin $ git remote add teamone https://github.com/xxxx/hello.git 追加(ちなみに削除はremove) $ git remote origin teamone $ git config --list remote.origin.url=https://github.com/xxxx/hello.git remote.teamone.url=https://github.com/masatomix/helloworld1.git *** git fetch/pull/push [#y32cac18] さて、リモートのリポジトリをcloneしたとき、ローカルには - ローカルブランチ master - リモートブランチ origin/master が作成されました。このリモートブランチは originサーバを追跡する特別なブランチで、直接自分では操作しません。originサーバは他人がプッシュすることで手元のリモートブランチと異なる場合が出てくるので、git fetch origin と打つことで直近化されます。pull や pushも含めて図にするとこんな感じ。 #ref(02.png) [[Git - リモートブランチ>https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E3%83%96%E3%83%A9%E3%83%B3%E3%83%81%E6%A9%9F%E8%83%BD-%E3%83%AA%E3%83%A2%E3%83%BC%E3%83%88%E3%83%96%E3%83%A9%E3%83%B3%E3%83%81]] ---- この記事は #vote(おもしろかった,そうでもない) #comment #topicpath SIZE(10){現在のアクセス:&counter;}