すぐ分かる! git の origin と master ってなんだ?

  • 232
    Like
  • 0
    Comment
More than 1 year has passed since last update.

前提知識

Gitは、分散レポジトリ
だから
「どのレポジトリ」の「どのブランチ」かを指定しないとわからないよ!

origin と master

  • origin: レポジトリの場所(URL)の別名
  • master: ブランチの名前

つまり、"git pull origin master" は、originという名前のレポジトリのマスターブランチから、git pull しろと命令している。

デフォルト

origin と master はデフォルトだよ。
つまり、 "git pull" = "git pull origin master"

別名はどこを指してるんだよ?

% git config --list

以下みたいにどこを指しているかわかる!

remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=https://github.com/ユーザ名/レポジトリ名.git

俺だって別名つけてーよ

GitHub のレポジトリに名前つけちゃおう。

git remote add 別名 https://github.com/ユーザ名/レポジトリ.git

git remote add upstream https://github.com/user/repositry.git

あちこちのレポジトリを追加して、あちこちに push すればいいさ。

別のレポジトリに push しちゃうぜ

GitHub から持ってきたソースを Bitbucket にpush しちゃおう。

Bitbucketのサイトでレポジトリを新規作成してから

git remote add bitbucket https://ユーザ名@bitbucket.org/ユーザ名/レポジトリ名.git

で、 git config --list

remote.bitbucket.url=https://ユーザ名@bitbucket.org/ユーザ名/レポジトリ名.git
remote.bitbucket.fetch=+refs/heads/:refs/remotes/gitbreak/

push する
git push はデフォルトでは、同じブランチ名がリモート上にある場合、全部のブランチを push しちゃう?

git push -b bitbucket master