大学の授業の関係でNiftyさんのC4SAを使ってみました。
ワンクリックでアプリケーションの雛形を作ってくれる上に、ブラウザ上でエディタやらコマンドラインやら、怪しげなツールが使えておもしろい。
そしてサーバの環境構築でもたつかずに済むというのはいいですね。
でもローカルでも作業したいとなると、直接push/pullできないのがちょっと難点です。
なので、Github経由でC4SAとローカルを繋いでみることにしました。
今回はRailsアプリを例にやります。
手順とか
- はじめに、C4SAでRailsアプリのCanvasを作る(今回は4.0選びました)細かな手順はC4SAのヘルプを参照
- Canvas一覧から、今しがた作ったものを選択。CLIだのファイルだのという項目の並んでいる画面に飛びます
- CLIを選択すると、コンソールがブラウザ上で立ち上がります
次に、色々必要なものをコンソールから入れたり作ったりします
ssh-keygenして、~/.sshにprivate keyを入れる。githubにpublic keyを登録する。
$ ssh-keygen
ここではc4sa_rsaという名前でkeyを作ったとする
$ mv c4sa_rsa ~/.ssh/
あとは、c4sa_rsa.pubの中身をlessかなんかで覗いて、githubにコピペして登録。
sshでgithubにクライアントの登録をする
Host github.com
HostName github.com
User git
Port 22
IdentityFile ~/.ssh/c4sa_rsa
TCPKeepAlive yes
IdentitiesOnly yes
$ ssh github.com
giboを入れて、楽々.gitignoreを作る
これ超重要。RailsみたいなWebアプリのフレームワークには.gitignoreが必要不可欠ですよね。手打ちで作るとかなりめんどくさいけど、giboがあると.gitignore作る手間がほっとんどありません。だいすき。
まずはインストールから。curlでソースから直接引っ張ってきます。
(変更:リンクが変わっていたので更新しました)
$ curl https://raw.githubusercontent.com/simonwhitaker/gibo/master/gibo > gibo
$ chmod +x gibo
$ mkdir ~/bin && mv gibo ~/bin/
$ echo export PATH=$PATH:$HOME/bin > ~/.bash_profile
$ source ~/.bash_profile
権限とかいろいろあるので、とりあえずhome直下にbinと.bash_profile作りました。これでgiboコマンドが使えるようになります。
giboの使い方は簡単。使っている開発環境の情報をgiboに引数として与えてあげると、.gitignoreに追加するべき項目を自動でもりもり生成してくれます。gibo -lで、指定できる環境一覧が見れます。
$ gibo Ruby Rails JetBrains SASS SublimeText > .gitignore
こんなかんじで、.gitignoreにそのままぶち込みます。
さて、これでC4SAがgitのクライアントになりました。ラストスパートです。
githubでレポジトリを作り、C4SAでinitしてaddしてcommmitしてremote addしてpushする
$ git init
$ git add .
$ git commit -m "first"
$ git remote add origin git@github.com:UserName/RepositoryName.git
$ git push origin -u master
いつものですね。
「github初めて使います!」的な人にはこちら
ローカルにcloneする
$ git clone git@github.com:UserName/RepositoryName.git
完了。
これで、ローカルで作業しつつgithubに上げておき、ある程度進んだところでC4SAからpullして本番環境で動作確認...的なことができます。
余談ですが、C4SAのRailsはDBにmysqlを使っているので、ローカルにmysqlが入ってないとbundle installで引っかかります。ご注意を。
感想
- VPSよりはお手軽で、Herokuよりめんどくさい。コンソール的な意味で。
- サーバを触ったことがない人がサービスを公開するには良さそう
- このエントリほとんどRails関係なかった