$ gem install rake
$ rake db:migrate
rake aborted!
You have already activated rake 0.9.2.2,
but your Gemfile requires rake 0.9.2.
Using bundle exec may solve this.
rvm use 1.9.3
rvm use 1.9.3 --default
rvm list
list installed rubies
activate Ruby 1.9.3
active and default to 1.9.3
Slide 28
Slide 28 text
with gemsets
gem isolation
Slide 29
Slide 29 text
gemsets
1.8.6
RVM
1.9.2 1.9.3
gemsets gemsets
global
myapp
rails3
global
otherapp
rails31
global
anotherapp
rails32
Slide 30
Slide 30 text
rvm gemset use
rvm 1.9.3@ --create
rvm gemset create
create gemset under current ruby
activate gemset under current ruby
shorthand syntax
Slide 31
Slide 31 text
switching automation
ruby & gemset
Slide 32
Slide 32 text
rvm 1.9.3@myapp --create --rvmrc
Slide 33
Slide 33 text
awareness
version
Slide 34
Slide 34 text
$ rvm current
ruby-1.8.7-p358@appname
gemset
version patch
Slide 35
Slide 35 text
rvm info
RVM version
Ruby version
Gemset location
Etc.
Slide 36
Slide 36 text
for GUI lovers
A new hope
Slide 37
Slide 37 text
JewerlryBox
an OS X interface to RVM
Slide 38
Slide 38 text
Tokaido
Railcar
and coming soon-ish
&
Slide 39
Slide 39 text
precision
tools
Slide 40
Slide 40 text
$ rails server
$ rails server -p 1234
Address already in use -
bind(2) (Errno::EADDRINUSE)
Slide 41
Slide 41 text
No content
Slide 42
Slide 42 text
independence
local server
Slide 43
Slide 43 text
powder install
powder link
powder open
installs pow for you
symlink current app to appname.dev
open appname.dev in default browser
Slide 44
Slide 44 text
powder restart
powder applog
powder list
restart pow for current app
tails the current development log
displays all existing pow servers
Slide 45
Slide 45 text
undefined method ‘stuff’
for nil:NilClass
Slide 46
Slide 46 text
No content
Slide 47
Slide 47 text
class Thing
def self.foo(bar = nil)
binding.pry
bar.stuff
end
end
Slide 48
Slide 48 text
[2] pry(Thing)>
[1] pry(Thing)> bar
=> nil
ls
Thing.self methods: foo
locals: _ _dir_ _ex_ _file_
_in_ _out_ _pry_ bar
Slide 49
Slide 49 text
ls
cd
edit
shows variables & methods in scope
move into different context
opens current file in default editor
Slide 50
Slide 50 text
No content
Slide 51
Slide 51 text
how good you have it
you don’t know
Slide 52
Slide 52 text
source 'https://rubygems.org'
gem 'rails', '3.2.2'
gem 'sqlite3'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
Slide 53
Slide 53 text
built on the
tears of developers
Slide 54
Slide 54 text
gem 'rails', '3.2.2'
gem 'rails', '>=3.2.2'
gem 'rails', '~>3.2.2'
specific version dependency
loose version dependency
optimistic version constraint
Slide 55
Slide 55 text
gem 'rails', '~>3.2.2'
gem 'rails', '>=3.2.2', '< 3.3'
sexy pessimistic version constraint
~ equivalent to ~
pessimistic version constraint
Slide 56
Slide 56 text
bundle install
bundle update
bundle exec rake
resolve dependencies & install gems
update all gems in gemfile if possible
use the rake version in the gemfile
Slide 57
Slide 57 text
$ rake db:migrate
rake aborted!
You have already activated rake 0.9.2.2,
but your Gemfile requires rake 0.9.2.
Using bundle exec may solve this.
remember this?
$ bundle exec rake db:migrate