Githubで公開されているgh-pageブランチの更新

いまいち理解できてないけど、とりあえずできたのでメモ

Githubで新しいリポジトリを作るときにpageも作成した場合、gh-pagesというブランチがGithubリポジトリに作成される。

以下のコマンドでローカルの環境を'gh-pages'の内容にきりかえる

$ git checkout -b gh-pages origin/gh-pages

index.htmlなどの内容を変更して、以下のコマンドで変更をpushする。

$ git commit -a -m "hoge"
$ git push

作業がおわったら'master'ブランチに戻す

$ git checkout master

追記:ローカルのブランチの名前とリモートのブランチの名前が異なる名前の場合

たとえば以下のようにチェックアウトすると、ローカルのブランチの名前をリモートのそれとは別の名前にすることができる。

$ git checkout -b pages origin/gh-pages

上記の場合だと、リモートのgh-pagesというブランチを、ローカルのリポジトリpagesという名前のブランチとしてチェックアウトすることになる。

そうした場合、pushの方法に注意しなければいけない。
普通にcommitした後、以下のようにpushする。

$ git push origin pages:gh-pages

push先のリポジトリとして、originを明示的に指定し、対象となるブランチを <src>:<dest> の形式で指定する。
上記の場合だと src(push元)がローカルの pages ブランチ、dest(push先)がリモートの gh-pages ブランチとなる。