git,ubuntu

RhodeCodeというのは、 Githubのような雰囲気のソース共有サーバを構築するオープンソースです。 Githubでやりたい事を、Githubではなく、ローカルで実現したい、といった場合に適していると思います。 リポジトリをフォークしたり、ソースレビューをしたりetc と言うことで、 RhodeCodeをインストールして見ます。 RhodeCodeはPython製なので、Pythonをインストールします。 sudo apt-get install python-dev python-set ...

git,Linux,ubuntu

svnのリポジトリをgitで扱う方法として svn gitというコマンドツールがある 今回はgitをリモートリポジトリにする方法は別途解説するとして このコマンドを使用して、svnリポジトリをgitに移行してみます。 まずは、gitリポジトリをイニシャライズします。 イニシャライズ時に、リモートリポジトリにする前提で移行するので--bareオプションを付けます。 これは、my_prodディレクトリにソースを展開せずに管理情報だけを保持するリポジトリにするオプションです。 git init --b ...

git,ubuntu

公開リポジトリを作成するまで gitのインストール sudo apt-get install git gitoliteのインストール sudo apt-get install gitolite gitolite用アカウントの作成 sudo adduser --disabled-password gitolite 管理者用として公開鍵を作成 ssh-keygen -t rsa gitoliteアカウントのホームに転送 sudo cp .ssh/id_rsa.pub /home/gitolite/a ...

Ruby,ubuntu

Rubyは、リファレンス実装でC言語によるRuby(CRuby)や、Javaでの実装のJRuby、.NETのIronRubyなど、多くの実装があります。 これを一つ一つ環境構築してたら、大変なので RVMというRubyの管理ツールをインストールしてみます。 これで出来る事は Rubyのバージョンを切り替える CRubyからJRubyに切り替える gemのセットを作って切り替える など お手軽に入れるには、Ubuntuなどのユーザ領域にRVMをインストールする ということで、インストールして見ます ...

git,Linux,Windows

gitoliteからリポジトリをクローンするには Linux系の場合 ssh-keygen -t rsa でキーを作成する id_rsa.pubを適当な名前でコピーする 例)gendosu-ubuntu.pub gitoliteのサーバにsftpなどで送り込んで gitolite-admin/keydirに格納する gitolite-adminリポジトリをコミットして、プッシュ これで、gitoliteへ公開鍵を設定完了 ssh gitolite@サーバ名 とやると、gitoliteがメッセージ ...

Ruby on Rails 3 Tips

scope :active, where('deleted_at is null') というスコープを設定したとして この条件を含むSQLをコード内で取得したい場合ってありますよね。 SQL書いてでゴニョゴニョしたい場合とか…。 そんな時には Article.active.to_sql としてやれば、 select * from articles where deleted_at is null というSQLが取得出来ます。 参考例 # === タグ class Tag < Act ...

git

たとえば、svnのリポジトリをgitで扱いたい場合、 git svn clone とやれば、svnのリポジトリをgitとして扱うことが出来ます。 gitでtagやbranchなども使ってsvnリポジトリを扱いたい場合 git svn clone -s とすれば、ブランチやタグの情報も取得出来るようになります。 ただし、 という構成になっていないと よろしくやってくれないようです。 通常と違う構成でsvnを使っている場合、-sオプションでは無く git svn clone --trunk=<tru ...

git

git log コマンドで コミットの日付が Date: Tue Nov 27 06:21:17 2012 +0000 なんて感じで、9時間ずれるような時は git log --date=local とオプションを付ければ、 Date: Tue Nov 27 15:21:17 2012 と、ちゃんと表示される

Ruby on Rails メモ

Ruby on Railsで数値を整形する場合、ActionViewには便利なヘルパーがあります。 number_with_delimiter です。 number_with_delimiter(12345678) # => 12,345,678 number_with_delimiter("123456") # => 123,456 number_with_delimiter(12345678.05) # => 12,345,678.05 number_w ...

Android

ARROWS X LTE(F-05D)を使っているのですが 買った当初から電池の消費が激しかった。 contents headlineが悪いとか、そもそもXiは電池を消費するとか 色々ありますが 先日Android4.0へのアップグレードがあり、そのアップグレードのおかげか どのアプリがどの程度バッテリーを消費しているのかを見える化されました。 設定の中の「電池」という項目ですね。 以前はAndroidシステム?に統合されて表示されてたような気がします。 なので、細かく、どのアプリ(サービス)が ...

Ruby on Rails 3 Tips

class ActiveForm include ActiveModel::Conversion extend ActiveModel::Naming include ActiveModel::Validations def persisted?; false; end def initialize(attributes = {}) attributes.each do |name, value| send("#{name}=", value) rescue nil end ...

Ruby,Ruby on Rails 3 Tips

sql = " SELECT * FROM users WHERE created_at >= '#{2.weeks.ago}' ORDER BY created_at DESC " @users = User.paginate_by_sql(sql, :page => params, :per_page => 20) こんな感じ

Ruby on Rails 3 Tips,Ruby on Rails 3 プラグイン

Rails 2.x系で、論理削除と言ったら、もうこれ!というのが acts_as_paranoid でした。 Rails 3.x系では rails3_acts_as_paranoid を使います。 インストールの方法は GemFileに gem "rails3_acts_as_paranoid", "~>0.2.0" と追記して bundle実行 ※Rails3.1の場合は、GemFileに書くプラグインのバージョンが"~>0.1.4"になります。 ※Rails3.0の場合は、Gem ...

Ruby,Ruby on Rails 3 Tips

UbuntuにRails3.2.8の実行環境を一からインストールしてみます。 Ubuntuは12.04を使用します。 まずは Rubyから、と言いたい所ですが、必要パッケージ類から sudo apt-get install make build-essential libssl-dev zlib1g-dev \ apache2-mpm-prefork apache2-prefork-dev libapr1-dev libaprutil1-dev \ libcurl4-openssl-dev li ...

Ruby,Ruby on Rails 3 Tips

Rails 3.2では、javascriptやstylesheetはassetにまとめられます。 ここにまとめられたものは 例えばstylesheetであれば自動的に「コントローラ名.css.scss」がcssコンパイルされ、 リンクされます。自分で指定する場合は <%= stylesheet_link_tag "users" %> とすればリンク出来ます。 さて、Rails3.2では、stylesheetはscssが、JavaScriptはCoffeScriptがそれぞれ 標準で使 ...

VMWare

VMware ESXi 5.1上の仮想マシンのディスクを変換出来るのか? と思って調査してみました。 まず、VMware ESXi 5.1にアクセスするために VMware ESXi 5.1にSSH出来るように設定する必要があります。 VShere Clientを開き、サーバの構成の中から「セキュリティプロファイル」を選択します。 サービスのプロパティを開き、SSHを開始します。 同様に、ESXiシェルを開始します。 これで、VMware ESXiにSSHでリモートログイン出来るようになります。 ...

ubuntu

lsyncdは、ディレクトリの変更を検知して、即座に同期させるというモジュールです。 ファイルの追加・変更・削除などがリアルタイムに同期される便利な物です。 便利なのですが、同期ファイルを増やしすぎると、上限に引っかかって、同期されなくなったりします。 lsyncdはディレクトリの変更を検知するためにinotifyというAPIを使用します。 このAPIでの検知出来るファイルの上限が lsyncdがディレクトリ内の変更を検知するために使う「inotify」には、「1ユーザが監視できる最大ディレクト ...

Windows

explzhのアーカイバDLLの自動アップデートでは どうもtarの64bit版はリストに含まれていないようで、tarファイルを解凍しようとするとtar64.dllを入れろと出てきます。 この場合、SuperASF の作者様のサイトよりダウンロード可能なtar64.dllをインストールすることでtar解凍ができるようになります。 tar64.dllをインストールするには 上記サイトよりtar64.dllをダウンロード後解凍し tar64.dll、tar64.libの二つをc:\windows\s ...

Windows

WinSCPにはコマンドモードがありますが このコマンドモードでスクリプトを少しだけ書いて実行してあげると サーバのディレクトリとWindows上のフォルダの中身を自動で同期してくれる。 スクリプトというのは option batch on open bnavi@192.168.1.100 sync remote -filemask="| .svn/;*.log" -delete C:\Users\hogehoge\Documents\eclipse /home/hogehoge/product ...

VMWare

なんか難しいお題ですが ようは.vmemという拡張子が付くファイルを生成せずに仮想マシンを実行するという話です。 この.vmemという拡張子が付くファイルは、仮想マシンの設定のメモリ量に応じてサイズが増えます。 2Gのメモリを指定したら、このファイルも2G。 さすがに2Gともなると、ファイルアクセスでずいぶんとパフォーマンスが削られてしまうので この2Gの.vmemファイルを作らないで仮想マシンを実行したいと思います。 設定方法は .vmxという仮想マシンの定義ファイルがあるのですが、このファイ ...