Skip to content

Instantly share code, notes, and snippets.

@dtinianow
Created July 5, 2016 21:21
Show Gist options
  • Save dtinianow/9d5e2b555f89cc9ff2d892eb04f3e660 to your computer and use it in GitHub Desktop.
Save dtinianow/9d5e2b555f89cc9ff2d892eb04f3e660 to your computer and use it in GitHub Desktop.

Project workflow:

  1. Load/Reload waffle.
  • Find all tasks
  1. Choose a card from the backlog in waffle. If we're working separately, it's best to move that card that you've chosen into ready and perhaps assign it to yourself as well.
  • Pick out a specific task to work on
  1. git checkout master
  • Make sure you are on the master branch
  1. git pull origin master
  • Retrieve the most up-to-date version of the project
  1. run rspec
  • Check to see that all tests are passing
  1. Checkout a new branch and tag it with #issue_number
  • Create a new branch for working on a feature and identify that brancgh
  1. Write the feature test associated with your waffle card.
  • Setup a test to help structure the new feature you are about to add
  1. Run rspec, and make sure that there are no errors that blow up the stack (missing ends, forgetting capitalization, etc.)
  • Get your tests to a point where they are failing, and are do not have errors
  1. commit your feature test
  • Save the test you built locally
  1. push this up to github, and create a [WIP] pull request.
  • Save the test you built on github. WIP - Work In Progress
  1. start implementing the features
  • Get to work
  1. when you commit, remember to push up to remote, and wait for hound to respond
  • Hound checks your Ruby styling and syntax. Make sure to commit both locally and remotely
  1. If there is an issue, ping other people and make question comments with references on your pull request. Wait for aid. Remember to ping on the slack channel as well.
  • Reach out to others if you run into an issue
  1. Correct the hound issues you have, go to step 10.
  • Fix your issues and check to make sure they are gone now
  1. When your feature test passes, commit and push up to GitHub. Wait for those hound requests to come back in.
  • Commit your new changes are they are working
  1. Deal with hound. Push up to Github. Repeat until hound is dealt with.
  • Check to see if your syntax is OK and repeat if not
  1. Search the project for binding.pry and save_and_open_pages leftover. Take those remnants out of the code.
  • Remove your debugging techniques
  1. Run rails s and see if everything looks and behaves like you want it to. Fix those and commit. Deal with hound.
  • Fire up server and check to see if everything is running like you want
  1. If there are really obvious sad paths for your feature test, you should write that test and return to Step 10.
  • Ensure that everything work the way you expect
  1. Rebase and squash the commits that you do not want record for posterity.
  • Taking many commits and making them into one commit for one feature
  1. Check if your branch comes from the latest master, and if not pull master into your branch.
  • Make sure your work is current
  1. Run rspec one more time
  • Make sure code is still working after pulling in master
  1. Remove [WIP] from pull request. If you're not paired, tag others and ping slack for a code review.
  • Remove work in progress tag
  1. After code is merged to master, remember to push to heroku with git push heroku master and heroku run rake db:migrate
  • Finalize work
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment