Skip to content

Commit

Permalink
the README that gets generated with the app should be awesome, not te…
Browse files Browse the repository at this point in the history
…rrible.
  • Loading branch information
Dan Croak committed Dec 4, 2011
1 parent 257ea39 commit c5ba370
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 72 deletions.
3 changes: 1 addition & 2 deletions lib/suspenders/app_builder.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ class AppBuilder < Rails::AppBuilder
include Suspenders::Actions

def readme
copy_file "README_FOR_SUSPENDERS"
copy_file "README.md"
end

def remove_public_index
Expand Down Expand Up @@ -175,7 +175,6 @@ def setup_default_rake_task
append_file "Rakefile" do
"task(:default).clear\ntask :default => [:spec, :cucumber]"
end

end

def add_clearance_gem
Expand Down
77 changes: 77 additions & 0 deletions templates/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
Rails app
=========

This is a Rails 3.1 app running on Ruby 1.9.2 and deployed to Heroku's Cedar stack. It has an RSpec and Cucumber test suite which should be run before commiting to the master branch.

Laptop setup
------------

Use our laptop script to get Homebrew, Postgres, Redis, RVM, Ruby 1.9.2, and Bundler:

https://github.com/thoughtbot/laptop

Use our dotfiles to get commands like `git up` and `git down` for a clean git history:

https://github.com/thoughtbot/dotfiles

Get the code:

git clone git@github.com:your-account/your-app.git

Set up the app:

cd your-app
bundle
bake db:create
bake db:migrate

Running tests
-------------

Run the whole test suite with:

bake

Run individual specs like:

s spec/models/user_spec.rb

Run individual features like:

cuc features/visitor_signs_in.feature

Tab complete to make it even faster!

When a spec or feature file has many specs in them, you sometimes want to run just what you're working on. In that case, specify a line number:

s spec/models/user_spec.rb:8
cuc features/visitor_signs_in.feature:105

Development process
-------------------

To run the app in development mode, use Foreman, which was installed from the `laptop` script:

foreman start

It will pick up on the Procfile and use Thin as the app server instead of Webrick, which will also be used by Heroku's Cedar stack.

git pull --rebase
grb create feature-branch
bake

This creates a new branch for your feature. Name it something relevant. Run the tests to make sure everything's passing. Then, implement the feature.

bake
git add -A
git commit -m "my awesome feature"
git push origin feature-branch

Open up the Github repo, change into your feature-branch branch. Press the "Pull request" button. It should automatically choose the commits that are different between master and your feature-branch. Create a pull request and share the link in Campfire with the team. When someone else gives you the thumbs-up, you can merge into master:

git up
git down
git push origin master

For more details and screenshots of the feature branch code review process, read [this blog post](http://robots.thoughtbot.com/post/2831837714/feature-branch-code-reviews).

70 changes: 0 additions & 70 deletions templates/README_FOR_SUSPENDERS

This file was deleted.

0 comments on commit c5ba370

Please sign in to comment.