fc2ブログ

2024.11 «  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - - - - » 2025.01
TOP > CATEGORY > rake

TOP

rails のツールのアップデートを止めておきたい rake rails:freeze:gem と rake rails:unfreeze 

2007年12月23日 ()
ruby on rails は、activerecord や activesupport などというツールを使います。

オープンソースの常、これらのツールは更新に更新が重ねられます。

更新するためには、

gem update



コマンドを使います。

でーも、もう rails のアプリを開発してしまっていて、gem update を行っても、開発中のアプリだけは、今のバージョンを残しておきたい、という場合があると思います。

そんなときは、開発中のアプリ内のディレクトリで次のコマンドをブッ叩きましょう!

rake rails:freeze:gems



そうすると、vendor/rails ディレクトリが作成されて、この中に activerecord やら activesupport やらの現在のソースコードがコピーされます。

これがこの開発中のアプリ内で優先的に使用されます。
(/usr/lib/ruby/gems/1.8/gems とかに入っているツールのソースコードより優先される)

そして、このフリーズしたツールソースコードを無効にしたい(元に戻したい)場合は、

rake rails:unfreeze



そうすると、 vendor/rails ディレクトリごと消えます。

関係ないですが、フリーズドライの宇宙食のイチゴが今いきなり食べたくなりました。筑波にでも行って買って来ようっと。

【広告】

[2007.12.23(Sun) 18:04] rakeTrackback(0) | Comments(0) 見る▼
↑TOPへ

統計で丸裸にされそう。ぃゃぁん rake stats 

2007年07月23日 ()

# rake stats



コマンドで、現在の rails アプリケーションの統計情報を表示できます。


+----------------------+-------+-------+---------+---------+-----+-------+
| Name                 | Lines |   LOC | Classes | Methods | M/C | LOC/M |
+----------------------+-------+-------+---------+---------+-----+-------+
| Controllers          |   251 |   153 |       5 |      23 |   4 |     4 |
| Helpers              |    38 |    16 |       0 |       1 |   0 |    14 |
| Models               |   280 |   124 |       6 |      19 |   3 |     4 |
| Libraries            |     0 |     0 |       0 |       0 |   0 |     0 |
| Components           |     0 |     0 |       0 |       0 |   0 |     0 |
| Integration tests    |    53 |    41 |       1 |       2 |   2 |    18 |
| Functional tests     |   181 |   134 |       8 |      24 |   3 |     3 |
| Unit tests           |   163 |   131 |       5 |      15 |   3 |     6 |
+----------------------+-------+-------+---------+---------+-----+-------+
| Total                |   966 |   599 |      25 |      84 |   3 |     5 |
+----------------------+-------+-------+---------+---------+-----+-------+
  Code LOC: 293     Test LOC: 306     Code to Test Ratio: 1:1.0



Controllers       app/controllers
Helpers           app/helpers
Models            app/models
Libraries         lib
Components        components
Integration tests test/integration
Functional tests  test/functional
Unit tests        test/unit

Lines   行数
LOC     コード記述行数(コメント行とか空行を抜かした行数)
Classes クラスの数
Methods メソッドの数
M/C     1クラスあたりの平均メソッド数
LOC/M   1メソッドあたりの平均コード記述行数

自分で作ったアプリの統計を眺めるとニヤニヤしてきますね。というのは私だけ?(© だいたひかる)

【広告】

[2007.07.23(Mon) 11:41] rakeTrackback(0) | Comments(0) 見る▼
↑TOPへ

rake で何ができるか 

2007年07月18日 ()
rake コマンドは、ちょこちょこと使いますが、一体全体 rake って何さま?って思ったときに、rake コマンドで出来ることの一覧があれば、なんとか雰囲気はつかめるんじゃないか、と思いまして、rake で出来ること一覧がないかな、と探しました。

そしたら、いいオプションがあるではないですか!

# rake --tasks



で、rake で出来ることの一覧が表示されるではないですか。

せっかくなので、私の超絶翻訳をさせていただきます。今回、難しいので、適当度100%です!ごめんなさい!!

rake db:fixtures:load # 現在の環境のDBに、fixture(データ行のこと?)をロードする。 fixture は以下のように指定する FIXTURES=x,y
rake db:migrate # Migrate the database through scripts in db/migrate. Target specific version with VERSION=x
rake db:migrate # db/migrate に入っているスクリプトで、データベースをバージョンアップ・ダウンする。VERSION=x でバージョン指定もできる。
rake db:schema:dump # Active Record に対応している DB に移行できる db/schema.rb ファイルを作成する。
rake db:schema:load # schema.rb ファイルをデータベースに読み込む。
rake db:sessions:clear # セッションテーブルの内容を消去する。
rake db:sessions:create # CGI::Session::ActiveRecordStore で使えるセッションテーブルを作成する。
rake db:structure:dump # SQL ファイルに DB 構造をダンプする。
rake db:test:clone # 現在の環境の DB スキーマから、テスト用 DB を複製する。
rake db:test:clone_structure # Development 構造(?)から、テスト用 DB を複製する。
rake db:test:prepare # テスト用 DB を準備して、スキーマを読み込む。
rake db:test:purge # テスト用 DB を空にする。
rake doc:app # app 用 HTML ファイルをビルドする、か、作成する。(←うーん、実際に使ってみないとどっちの訳がいいか分かりません)
rake doc:clobber_app # rdoc プロダクトを消去する。
rake doc:clobber_plugins # プラグイン用ドキュメントを消去する。
rake doc:clobber_rails # rdoc ドキュメントを消去する。
rake doc:plugins # インストールされているプラグイン全てのドキュメントを生成する。
rake doc:rails # rails HTML ファイルを作成する。
rake doc:reapp # RDOC ファイルを上書き再作成する。
rake doc:rerails # RDOC ファイルを上書き再作成する。
rake log:clear # log/ ディレクトリの *.log ファイルのサイズを、0 byte にする。(ファイルそのものは消さない)
rake rails:freeze:edge # 最新のエッジの Rails に固定する。もしくは、(例: REVISION=4021) のようにリビジョンを指定して、固定する。もしくは、(例: TAG=rel_1-1-0)のようにタグを指定して固定する。
rake rails:freeze:gems # 現在の gem でアプリケーションを固定して、vendor/rails に unpack する。
rake rails:unfreeze # このアプリケーションの gem の固定解除。もしくは、gem の流動的な使用を許可する。
rake rails:update # Rails の configs と scripts と public/javascripts を更新する。
rake rails:update:configs # 現在インストールされている rails の config/boot.rb を更新する。
rake rails:update:javascripts # 現在インストールされている rails の javascript を更新する。
rake rails:update:scripts # script/ ディレクトリに新規のスクリプトファイルを追加する。
rake stats # KLOCs のようなアプリケーションコードの統計を表示する。
rake test # 全ての unit と functional テストを行う。
rake test:functionals # test/functional に入っている functional テストを行う。
rake test:integration # test/integration に入っている integration テストを行う。
rake test:plugins # vendor/plugins/**/test に入っている plugin テストを行う。もしくは、PLUGIN=name で指定もできる。
rake test:recent # 最近の変更に対するテストをする。
rake test:uncommitted # (Subversion を使っているときだけ)最後のチェックインからのテストをする。
rake test:units # test/unit に入っている unit テストを行う。
rake tmp:cache:clear # tmp/cache に入っているファイルとディレクトリを全て消す。
rake tmp:clear # tmp/ に入っている、session と cache と socket ファイルを消す。
rake tmp:create # sessions と caches と sockets ディレクトリを tmp ディレクトリの中に作成する。
rake tmp:pids:clear # tmp/pids に入っているファイルを全て消す。
rake tmp:sessions:clear # tmp/sessions に入っているファイルを全て消す。
rake tmp:sockets:clear # tmp/sockets に入っているファイルを全て消す。



誤訳多発注意報発令中なので、よく分からない場合、rake --tasks で原文を読んでみてください。

【広告】

[2007.07.18(Wed) 02:36] rakeTrackback(0) | Comments(0) 見る▼
↑TOPへ

ruby クラス・メソッド仕様のドキュメント自動生成 

2007年07月14日 ()
ある程度、自分のアプリも大きく育ててきた時点で、自分が作ったcontrollerとかmodelとかのクラスとメソッドの仕様をまとめておきたい、もしくはまとめなきゃ!と思う時が来ると思います。

そんな時は、俺様に任せろコマンドが存在します。

rake doc:app



と打てば、あれよあれよという間に以下のコンソール出力と共に、HTML ドキュメントファイルが doc/app の下に作られるので、それをブラウザで見れば良いわけです。

(in /home/roruser/myApp)
rm -r doc/app

.
.
.
Generating HTML...

Files: 109
Classes: 134
Modules: 63
Methods: 445
Elapsed: 13.960s



これは手間いらずです。節約できた時間でゆっくり風呂にでもアヒルのおもちゃ(通称:村長)を浮かべて入りましょう。

【広告】

[2007.07.14(Sat) 02:36] rakeTrackback(0) | Comments(0) 見る▼
↑TOPへ

TOP