Guard-rails is watching on your railses!
Main repository
Currently, the official fork repository is at ranmocy/guard-rails. Please, come here and communicate with me.
Install
Please make sure to have Guard installed before continuing.
Add Guard::Rails to your Gemfile
:
group :development do
gem 'guard-rails', require: false
end
Add the default Guard::Rails template to your Guardfile
by running:
$ guard init rails
Add options in Guardfile
guard :rails, port: 3000, host: '0.0.0.0' do
watch('Gemfile.lock')
watch(%r{^(config|lib)/.*})
end
Now I can automatically restart your Rails development server as your files change!
Lots of fun options growing!
-
:daemon
runs the server as a daemon, without any output to the terminal that startedguard
(defaultfalse
) -
:debugger
enable the debugger in server. Requires ruby-debug gem. (defaultfalse
) -
:environment
is the server environment (defaultdevelopment
) -
:force_run
kills any process that's holding the listen port before attempting to (re)start Rails (defaultfalse
) -
:pid_file
specify your pid_file (defaulttmp/pids/[RAILS_ENV].pid
) -
:host
is where the server is hosted (defaultlocalhost
) -
:port
is the server port number (default3000
) -
:root
lets you specify the Rails root, i.e. for using guard-rails to run a dummy app within an engine (try:root => '/spec/dummy'
). -
:server
the webserver engine to use (try:server => :thin
) -
:start_on_start
will start the server when starting Guard (defaulttrue
) -
:timeout
waits when restarting the Rails server, in seconds (default30
). -
:zeus_plan
the custom plan in zeus, only works whenzeus
option istrue
(defaultserver
) -
:zeus
support zeus to boost rails init speed (defaultfalse
). -
:CLI
construct the runner command as you will! Will omit all options above exceptpid_file
! (defaultrails server --pid tmp/pids/[RAILS_ENV].pid
)
How-to
-
Multiple instances use
pid_file
option to run multiple instances with same rails_env. - Avoid multiple autoruns when editing by VIM and Emacs move the backup files to somewhere else or just ignore them in Guardfile.
- Use binding.pry in Rails Actually you can't! See discussion here.
Philosophy
- All Platforms MRI is the main test case. But will be tested under REE and JRuby.
- Live on the edge Guard-Rails will be tested under Ruby 2.2.3 to 2.3.0 with newest gems.
- Semantic Version
Contribute
The best way to contact me is the Issues and Pull Request system on GitHub. Currently the official fork repository is at ranmocy/guard-rails.
Please, post your issues or pull requests there. And I will be there as your call.
Contributors
- Ranmocy Sheng
- John Bintz
- cablegram
- Joel Moss
- Sidney Burks
- Paul Schyska
- Adam Michel
- Adib Saad
- Cezary Baginski
- Nathan Broadbent
- Tim Preston
- killphi
- Michael
- Benjamin Sullivan
- Johnny Robeson
- Peter Ragone
- Grant Hutchins and Jonathan Mukai-Heidt
- Everard Brown
- Sho Kusano
- Darrin Holst
- Leo Lou
- Luciano Sousa
- Michel Pavan Macedo
Copyright
Guard-rails is under MIT license.