南極の図書館

ペンギンが寝ていた…。

gitとgithubを使ってみる

gitとgithub

職場ではsvnで特に困っていないし、gitは難しいと聞いていたため、gitとgithubはずっと敬遠していた。
しかし、そろそろgithubを避けてもいられなくなってきたので(今更)gitの導入とgithubの登録を行った。
githubについては、オフィシャルの説明とチュートリアル(help.github)がとても丁寧なので、想像以上に簡単だった。
ただ、gitそのものは聞いていた通り理解に時間がかかりそう。

サインアップから設定まで

https://github.com/
最上段の「日本語にしますか?」でYesをクリック。右上の「料金・登録」→画面が変わって「無料アカウントの作成」。
ユーザ名、メールアドレス、パスワードのみで登録ができる。
その後は「Set up git」の通りで特に詰まることは無かった。
・gitのダウンロード(※1)
sshの設定
・name,mail,user,tokenの登録


(※1)私はMacPortsで入れたかったので、下記のコマンドを使った。

$sudo port install git-core

プロジェクトの作成からコミットまで

次はプロジェクトの作成からgithubに上げるまで。こちらも「Create a Repo」が至れり尽くせり。ゆとり仕様。

・githubのwebで「プロジェクトの作成」を行う。この際にスペースはハイフンに変換されるよう。
・その後はターミナルで下記のように打っていく(help.githubの通り)。

$ mkdir ~/Hello-World  #ローカルレポジトリを作成する。私はホーム直下ではなく別ディレクトリにした。
$ cd ~/Hello-World
$ git init
Initialized empty Git repository in /Users/your_user_directory/Hello-World/.git/
$ touch README         #アップロードするテストファイルを作成する。エディタで「Hello World」などと書くと良い。
$ git add README       #gitは明示的にaddする必要がある。
$ git commit -m 'first commit'
$ git remote add origin git@github.com:username/Hello-World
$ git push origin master

2回目からはadd,commit,pushの3つで更新する。
その他、コマンドについてはこちらが解りやすい。
はじめてgitをつかったのでコマンドを復習します | KRAY Inc
Git 基礎最速マスター - ぐるぐる〜

Fork

チュートリアルでは次は「Fork a Repo」になっている。
これは自分以外の誰かのプロジェクトを、自分のgithubの下にまるごとコピーしてsvnのブランチとして使うようなものらしい。


forkする→それを自分のローカルにコピー(clone)して開発する→forkした自分のレポジトリを更新する→本家に「こんな機能作ったんですがどうですか?」と提案する。
…ということが簡単にできるようだ。forkの方法は、該当のgothubを開いてweb上で「forkボタン」を押すだけ。
なるほど、それでタイトルが「github SOCIAL CODING」なのか、とようやく理解した。

実際に使ってみる

気になっていたkomagata/lokka · GitHubyhara/sinatbbs · GitHubをForkしてみた。
sinatBBSはブランチでmasterではなくmagazineの方が新しいようだが、そのままForkするとMasterが対象となる。
そのため、magazineを別途ダウンロードしてローカルでマージを行った。


githubは難しそうだと思ってたけど、help.githubは丁寧だし検索で情報はいくらでもでてくるので、もっと早く登録すべきだった。
gitは理解するために本を買った方が良さそう。