はじめての github
 github で自作のアプリを公開しよう!
自己紹介
名前:           濱田康貴
HN:           (っ´∀`)っ ゃー
Twitter ID:   @nullpopopo
Facebook:     http://www.facebook.com/nullpopopo
職業:           インフラエンジニア
趣味:           勉強会運営 自転車 Linux
7つ道具:         vim awk grep ps netstat パイプ リダイレクト
将来の夢:                  geek団地 (iDC併設) 建設
githubって何?
•   gitのプロジェクトホスティングサービス
•   100MBまで無料で使える
•   gitリポジトリを自分で作って公開できる
•   WEB上から変更履歴などが参照可能
•   githubで公開されている他のOSSのコードをforkして開発することが可能
•   ただしバグトラッキングシステムがない
•   バグトラッキングはIssueでできます
※   出展: はてなキーワード http://d.hatena.ne.jp/keyword/GitHub
github でモテモテ!と希望に燃える



         自分で作ったアプリ
         を公開したい!
現実は厳しい・・・。




    どうしたらいいのか
    わからん!
用意するもの
•   開発環境 ( 本スライドではCentOS 6.2を想定しています )
     • openssh がインストール済であること
     • rpmforgeリポジトリをインストールすること ( 本スライドに手順掲載 )
     • git パッケージをインストールすること ( 本スライドに手順掲載 )
•   メールアドレス
rpmforge リポジトリをダウンロードする
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
git パッケージをインストールする
sudo yum --enablerepo=rpmforge install git
SSH鍵ペアを作成する
1) すでに鍵ペアがあった場合、上書きしないように .ssh ディレクトリをバックアップする
$ [ -d ${HOME}/.ssh ] && cp -pr ${HOME}/.ssh ${HOME}/DOT.ssh.$(date +%Y%m%d)

2) ssh-keygenコマンドで鍵ペアを作成する
$ ssh-keygen

Generating public/private rsa key pair.
Enter file in which to save the key (/home/oresama/.ssh/id_rsa):
/home/oresama/.ssh/id_rsa already exists.
Overwrite (y/n)? y                                            既に鍵があれば上書き
Enter passphrase (empty for no passphrase):                   してよいか尋ねられる
Enter same passphrase again:
Your identification has been saved in /home/oresama/.ssh/id_rsa.
Your public key has been saved in /home/oresama/.ssh/id_rsa.pub.
The key fingerprint is:
2d:XX:c6:25:01:0a:29:XX:b2:a7:59:XX:dc:ad:XX:29 oresama@dev00.example.com
The key's randomart image is:
githubにアクセスする https://github.com
githubアカウントを作成する


             Plans, Pricing and
             Signup をクリック
githubアカウントを作成する



             Create a free
             account をクリック
githubアカウントを作成する




          ユーザ名、メールアドレス、パ
          スワードを入力し、画面下にあ
          る緑色の「Create an
          account」ボタンをクリックする
リポジトリを作ってみよう


リポジトリとは
•   ソースコードやドキュメントなどをまとめて保管するディレクトリ
•   複数人で開発するときは、リポジトリからソースコードを取り出して手元の開
    発環境で編集し、コミットすることでリポジトリに反映される
リポジトリを作ってみよう




        Create a Repository リンク
        を押下する
リポジトリを作ってみよう




   プロジェクト名、説明(任意)、ホームページURL(任意)を
   入力し、Create Repository リンクを押下する
リポジトリを作ってみよう




    リポジトリ作成後こんな画面になります
リポジトリを作ってみよう




  画面右上の「Account Settings」をクリックします
リポジトリを作ってみよう




      名前、メールアドレス、WEBサイト、会社
      名、住所 の欄を埋めます (任意)
リポジトリを作ってみよう


      Account Settings をクリックします
リポジトリを作ってみよう




   APIトークンが発行されているか確認します
リポジトリを作ってみよう




        SSH Keys をクリックします
リポジトリを作ってみよう




       Add SSH key をクリックします
リポジトリを作ってみよう
        Title に任意のタイトルをつけ
       Key 欄に ssh-keygen コマンドで
       作成した公開鍵 (id_rsa.pub) を
            コピペして登録します
リポジトリを作ってみよう




公開鍵登録後に、githubアカウントのパスワード入力を求められます。
    鍵ペアのパスワードではないことに注意してください。
リポジトリを作ってみよう




 リポジトリの中を見てみます
リポジトリを作ってみよう




       githubのユーザ名とメールアドレスが
             登録されたか確認します
リポジトリを作ってみよう
リポジトリ作成後、開発サーバで以下のコマンドを実行します

全体的な設定:
 gitの設定
  git config --global user.name "githubのユーザ名"
  git config --global user.email "githubに登録したメールアドレス"
 ※ 公開鍵登録を忘れないでね

次のステップ:
 mkdir <リポジトリ名>
 cd <リポジトリ名>
 git init
 touch README
 git add README
 git commit -m 'first commit'
 git remote add origin git@github.com:<アカウント名>/<リポジトリ名>.git
 git push -u origin master
成果物を
アップロード
 しよう!
初期設定
  git config --global user.name "githubのユーザ名"
  git config --global user.email "githubに登録したメールアドレス"

これらは最初に1回やっておけばOKです。ただし、同じサーバで複数の
githubアカウントを切り替えて使う場合は、都度実行する必要があります。
開発サーバでリポジトリを新規作成する
例) NABEATSU というリポジトリを作成してみる

 mkdir NABEATSU
 cd NABEATSU
 git init

リポジトリ名と開発サーバに作るディレクトリ名は必ずしも同じでなくても
よいらしいですが、後でわかりにくくなるので同じ名前にしておいたほうが
無難でしょう。
READMEファイルを新規作成する
 touch README

READMEファイルは、ファイル名を大文字にして作成します。この中に書き込
んだテキストをローカルリポジトリにコミットし、リモートリポジトリに
pushする(反映させる)までは、githubからは存在しないものとして扱われ
ます。
READMEファイルを
ローカルリポジトリにコミットする
 git add README
 git commit -m 'first commit'

コミット後、次のページに表示するようにコミット後のメッセージを
changelogに書くよう、編集画面が出てきます。デフォルトのエディタが立
ち上がるので、コミットメッセージを残しましょう。
コミット終了後の画面はこんな感じになります
ローカルリポジトリに
githubのリポジトリをリモートとして登録する
例) oresama アカウントで NABEATSU というリポジトリに登録する場合

 git remote add origin git@github.com:oresama/NABEATSU.git

このコマンドは、リポジトリを作成して最初に実行するだけでOKです。ロー
カルリポジトリで何かしら編集するたびに実行する必要はありません。
ローカルリポジトリから
リモートリポジトリへ修正内容を反映させる
git push origin master

ローカルリポジトリで何かしら編集し、リモートリポジトリへ反映させる都
度に実行します。
それではプログラムを作成してpushしてみましょ
う
ここでは例として、binディレクトリの下にシェルスクリプトを作ります。

 mkdir bin
 cd bin
 vi 3.sh
 # 成果物 3.sh を編集します

 cd ../

ここまでできたら、pushしてみましょう。

 git add *
 git commit
 git push -u origin master
リポジトリ内に
bin ディレクトリが
    できました
ソースコードも
しっかりアップロード
  されています
ね、簡単でしょう?

はじめてのgithub