Git超入門:"git push origin master"の"push"と"origin"と"master"の意味がわからないあなたへ

はじめに

Gitって難しくないですか?

GitやGithubの入門記事では、必ずこういうコマンドが登場します。

$ git remote add origin git@github.com:DQNEO/sample.git
$ git push -u origin master
この2行のコマンドを見て((;゚Д゚))ガクブルした経験はないでしょうか?

私は恐怖を感じました。
"remote"と"add"と"origin"と"push"と"master"の意味がわからん!!

人間(というか私は)は、わからないものが3つ以上同時に登場すると、ストレスを感じるものです。
この場合は5つもあるのでものすごいストレスです。

でもご安心を!
これから超わかりやすく解説します!

git remote add origin ... の意味は?

ずばり、
URLに"origin"という短縮名(ニックネーム)を付ける

したがって、git remote add unko .... と書いてもかまいません。
慣習上、"origin"という名前が使われることが多いというだけのことです。

そして、ここが重要なのですが
別にニックネームをつけなくてもよい。(git remote addしなくてもよい)

どうですか?ちょっと楽になったでしょ?

git push origin master の意味は?

push = アップロード
origin = リモートのサーバ名
master = デフォルトのブランチ名 (svnでのtrunkと同じ)

「ローカルのコードを、originというリモートサーバに対してアップロードせよ。指定するブランチはmasterである。」 ということです。

ちなみに"origin"は、「サーバを表すただの短縮名」なので、代わりにリモートサーバのURLを直接書いてもかまいません。

そして、"master"は正式に書くと"master:master"です。(ローカルのmasterをリモートのmasterに反映させる)

つまり、長く書くとこうなります。

git push git@github.com:DQNEO/sample.git master:master

こう書くと、git pushが何をやっているのかイメージしやすくなったのではないでしょうか?

補足

Githubの解説記事では "-u" オプションが書かれています。
$ git push -u origin master
masterをpushするときは"-u"は不要です。
また、ローカルのブランチhogeをリモートの同名ブランチhogeにpushしたいときも"-u"は不要です。
カテゴリ:

人気記事