nokogiri がlibxml2のせいでインストールできない

Mac OS X Mavericksで”gem i nokogiri”失敗の解決方法 – Qiita
http://qiita.com/t_732_twit/items/a7956a170b1694f7ffc2

上のリンク先を参考にnokogiriをインストールしようとしたものの、文中のgem install nokogiri -- --use-system-libraries --with-iconv-dir="$(brew --prefix libiconv)" --with-xml2-config="$(brew --prefix libxml2)/bin/xml2-config" --with-xslt-config="$(brew --prefix libxslt)/bin/xslt-config"を実行するタイミングでlibxml2 version 2.6.21 or later is required!というエラーが表示されてしまってnokogiriがインストールできなかった。

続きを読む nokogiri がlibxml2のせいでインストールできない

gitで差分を抽出してpatchで使えるファイルを生成

gitで差分を抽出してpatchで使えるファイルを生成したい時、毎回同じ検索ワードで検索して、毎回同じサイトを見ていたので、自分用にメモ。普通のpatchコマンドで取り込めるdiffファイルをgitで作成する – kanonjiの日記という記事が自分にとって一番分かりやすかった。このページを参考に、自分が使う用に書いておく。

$ # ファイルを生成
$ git diff (diffの方法) > (パッチ名.patch)
$ # 実行結果を確認
$ patch --dry-run -p1 < (パッチ名.patch)
$ # ファイルを適用
$ patch -p1 < (パッチ名.patch)

$ git diff develop features/dummy > diff.patch
$ patch --dry-run -p1 < diff.patch
$ patch -p1 < diff.patch

gitに関する書籍

よく使うgit(自分用)

gitでよく使うコマンドをメモ。随時アップデートする。

ブランチを新規作成 + 切り替え

$ git checkout -b (new_branch_name)

リモートブランチを持ってくる

$ git checkout -b (local_branch_name) origin/(remote_branch_name)

ローカルで作ったブランチをリモートに新規作成してpush

(remote_branch_name)は特に変更する必要がなければローカルのブランチ名と一緒でよい。

$ git push origin (remote_branch_name)

ちなみに、以下のように–set-upstreamを付けると、次回からgit pushだけでよくなる。

git push --set-upstream origin (remote_branch_name)

ブランチ名を変更する

カレントブランチの名前を(new_branch_name)に変える。

$ git branch -m (new_branch_name)

(old_branch_name)の名前を(new_branch_name)に変える。

git branch -m (old_branch_name) (new_branch_name)

ブランチを削除する

(branch_name)はremotes/origin/development/myfeatureの、development/myfeatureの部分。
ローカルブランチを削除して、リモートブランチを削除する

$ git branch -d (branch_name)
$ git push origin :(branch_name)

全部削除

$ rm -rf ./*
$ git rm -r ./*

別のブランチの内容を取り込む

現在のブランチに取り込みます。

$ git merge (another_branch_name)

サブモジュールの内容を修正した場合

サブモジュールのディレクトリに移動して、コミットしてプッシュしてから、プロジェクトのディレクトリでコミットする。

$ cd ./submoduels/subproject/
$ git commit -a
$ git push origin (remote_branch_name)
$ cd ..
$ git commit -a

バイナリが使っているライブラリの一覧とバージョンを調べる(otool)

例えばC++でコンパイルした時にバイナリが読み込んでいるライブラリのバージョンが調べたい時。

$ otool -L binary_name

で、できる。

nginxのリバースプロキシで巨大なファイルのダウンロードに失敗する件

例えば友人がスポーツの試合の動画を共有してくれた時、長時間にわたるものだと4GB~5GBぐらいまでデカかったりして、サーバーからダウンロードに失敗すると試行錯誤の時間がなかなか手痛い。今回はnginxでリバースプロキシを構成したサーバーから4GBぐらいのファイルをダウンロードしようとしたらできなくて困ったのだけれど、wgetを使うとできたのでメモ書き。
続きを読む nginxのリバースプロキシで巨大なファイルのダウンロードに失敗する件