jeweler で ruby の gem パッケージを作成する
jeweler をインストールする
gem でインストールする。
gem install jeweler
パッケージのディレクトリを作成する
gem パッケージ new_package を作るには
jeweler --rspec --yard --user-name "Your name" --user-email email@example.com --github-username username new_package
とする。上は rspec と yard を使うオプションをつけている。
cd new_package
ls -l
とすると .git ディレクトリが作成されたのがわかる。 ファイルは git で管理される。
パッケージに必要な調整をする
Rakefile
Rakefile の中で「TODO:」となっている項目を編集する。 具体的には、gem.summary と gem.description。
LICENSE.txt
ライセンスを GPLv3 にするには
wget http://www.gnu.org/licenses/gpl.txt -O LICENSE.txt
として LICENSE.txt を変更する。
Gemfile
rspec の 2.5.0 を使おうとすると Gemfile に
gem "rspec", "~> 2.3.0"
となっているためにうまくいかない。 Gemfile の中で
gem "rspec", ">= 2.3.0"
としてエラーが出ないようにした。
バージョン番号を記入するファイルを作成する
rake version:write
で作成する。
パッケージをビルドする
rake build
パッケージを作成してインストールする
rake install
バージョン番号を上げる
rake version:bump:patch
でバージョン番号を上げる。他には
rake version:bump:major
rake version:bump:minor
もある。
リリースする
rake release
とすると、git のコミット、git のタグ付け、 github へのプッシュ、rubygems.org へのアップロードを行う。
後から github にリポジトリを作る
リポジトリを作らずに
git push
とすると
ERROR: ytaka/ruby-unison.git doesn't exist. Did you enter it correctly?
fatal: The remote end hung up unexpectedly
のようなエラーになる。
github にログインして、「ダッシュボード」「新しいリポジトリ」でリポジトリを作成して
git push -u origin master
で push する。