tkymtk's blog

Ruby on Rails及びその周辺について調べたこと。Do whatever you want to do at your own pace.

GitのセットアップとGitHubへのアップロード

前回:gem設定ファイルを作成 Railsをインストール

Gitの設定は上手くいった。あえて言うなら

$ git add .

の"add"と "." の間にスペースをいれなかったため、エラーがでたくらい。 

 

そしてGitHubの設定。大変だった。

アカウントを作成してSSHの設定をしようと思ったが、

If you have decided not to use the recommended HTTPS method, we can ...  Generating SSH Keys - GitHub

 と書いてあったので、チュートリアルと違うことをやるのは多少不安だが、HTTPS method でやってみることに。Username と Email は 1.3.1の最初でセットしていたので、GitHubのページにしたがって、Password chaching からチャレンジ。

とりあえず、

$ git credential-osxkeychain

うんともすんとも言わない。。エラーも出ない。そっとターミナルを閉じる。osxkeychainがインストールされてないんだろうということにして、次のチャレンジ

$ curl -s -0 \ http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain

なぜだか知らないが壮大なエラーを吐かれて、蛙が2回ぐらい鳴く。やばそう。ターミナルそっ閉じ。いろいろやるが別なエラーがでる。いろいろ調べたらstackoverflowさんに。

I followed instructions on set-up-git and grabbed a new copy of git-credential-osxkeychain from S3. That resolved the problem. The new copy is of different size which makes me guess the bug has been patched. error: git-credential-osxkeychain died of singal 11

ん〜インストールすらできなかったんだけど、そういうならまたチャレンジ。

$ curl -s -0 \ http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain

$chmod u+x git-credential-osxkeychain

 なぜか知らないが今回はすんなりとできた。続いてsudo

sudo mv git-credential-osxkeychain \

"$(dirname $(which git))/git-credential-osxkeychain"

できない。

credential osxkeychain: No such file or directory 

 ないんかい!しかたないからstackoverflow - Locate Git installation folder on Mac OSX

$ which git

 で特定。

$ sudo mv git-credential-osxkeychain \

/usr/local/git/bin/git/git-credential-osxkeychain

 とするもまた同じエラーSpotlightで"osxkeychain"を探したらちゃんとある。場所を特定してFinderから直接osxkeychainをターミナルにドラッグして無事ちゃんとしたパスをいれることができた。最終的に、

 

$ sudo mv git-credential-osxkeychain \

/usr/local/git/bin/git-credential-osxkeychain

 だった。再度チャレンジ

$ git credential-osxkeychain

Usage: git credential-osxkeychain <get|store|erase> 

 よかった、ちゃんと説明どうり表示された。

 

そして、いよいよGitHubにアップロード

$ git remote add origin git@github.com:<username>first_app.git

No such file or directory

 またエラー

 first_appはあるはずだから、ディレクトリを移動してみる。

$ cd first_app/

 でアプリのディレクトリに移動。他のディレクトリでは

$ git status

fatal: Not a git repository (or any of the parent directories): .git

だったのが、

$ git status

# On branch master nothing to commit, working directory clean

となったからいけそうな予感。

 $ git remote add origin git@github.com:<username>first_app.git

No such file or directory

 だめだった。でもチュートリアルではSSH認証でやってたから、たぶんコマンドが違うのかなと思い、GitHubのページにあった通りに入力

$ git remote add origin https://github.com/user/repo.git

$ git push -u origin master

 できた!!

 

 

 

間違いがあれば、ご指摘下さると幸いです。