西山和広です。

opts.onでオプションが重複していると--helpでは
先に出てきた方に対応するように表示されるのに
実際には後に出てきたの方の意味になります。

% cat o.rb           
#!/usr/bin/ruby
require 'optparse'
ARGV.options do |opts|
  opts.on("-t", "--test-option"){p "test-option"}
  opts.on("-t", "--another-test-option"){p "another-test-option"}
  opts.parse!
end
% ruby18 -v o.rb -h
ruby 1.8.7 (2008-08-08 revision 0) [i686-linux]
Usage: o [options]
    -t, --test-option
        --another-test-option
% ruby18 -v o.rb -t 
ruby 1.8.7 (2008-08-08 revision 0) [i686-linux]
"another-test-option"
% ruby-1.8.6 -v o.rb -t
ruby 1.8.6 (2008-08-08 patchlevel 286) [i686-linux]
"another-test-option"
% ruby-1.8.7 -v o.rb -t
ruby 1.8.7 (2008-08-08 patchlevel 71) [i686-linux]
"another-test-option"
% ruby-trunk -v o.rb -t 
ruby 1.9.0 (2008-08-07 revision 18407) [i686-linux]
"another-test-option"
%

-- 
|ZnZ(ゼット エヌ ゼット)
|西山和広(Kazuhiro NISHIYAMA)