Skip to content
A Rails app to keep track of VCS changesets
Ruby JavaScript
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
app increase changesets per page to 20
config load secret token from environment, update readme to reflect that
db upgrade core files to rails 3
doc initial commit
lib/tasks upgrade core files to rails 3
log initial commit
public add pagination styles and workaround for per_page bug in 3.0.pre2
script upgrade core files to rails 3
spec add specs for changesets#destroy
tmp initial commit
vendor/plugins upgrade core files to rails 3
.gitignore revert to simplecov[-html] 0.3.9 due to bug in 0.4.0
.rspec install rspec
Gemfile don't specify gem versions unless pre-release versions are required, …
README.textile fix textile formatting in code block
Rakefile application module should be Changesets, not ChangesetsDev application module should be Changesets, not ChangesetsDev



Changesets is a Ruby on Rails application to keep track of your commits in a version controlled software project. It is useful for a workflow where commits are being made to a development branch and need to be merged into a staging or production branch on a per-commit basis. Changesets allows you to keep track of each commit you make including its revision number or commit hash, a ticket number if the commit references a ticket in an issue tracking system, a commit message/description, and a note. Most importantly, Changesets allows you to toggle the status of each changeset between “merged” and “unmerged” to keep track of which of your changesets still needs to be merged into your staging/production branch in a visually distinct way.


1. Run bundle install to install gem dependencies.
2. Run rake db:setup to create the database and load the schema.
3. Add a secret token for the session in your environment with the key SECRET_TOKEN. For example, using Apache, Passenger, and the SetEnv directive:

SetEnv SECRET_TOKEN "ad0f002d37565ca7510e5ea40c1ba14b80bf8bd7678301bb2315c6715a4eb0b37cb57b44fd7185bd6eb16315d0c7f85a395e1cdfcb0a342222465305e5153e48"

It’s easy to generate a token: Open up IRB and run:

require 'active_support'

That’s all it should require. Just start up the server and get going!

Optional Configuration

Changesets has the ability to display links to an issue tracking system for each changeset. To set this up, you will need to add a few environment variables.

Format: name
Description: The issue tracking system’s name. This will appear as the text of the links.

Format: path_to_changeset/__VALUE__
Description: The full URL to display a changeset.

Variable: TICKET_URL
Format: path_to_ticket/__VALUE__
Description: The full URL to display a ticket.

Here is an example of how this all might look using Apache and Passenger with Apache’s SetEnv directive:


Note that __VALUE__ should be used literally. This is a token that the application will replace with the real value at runtime.


Feedback is welcome and appreciated. You may contact me via Github or through my own website.

Something went wrong with that request. Please try again.