Managing Jumpstart Pro Updates
Jumpstart Pro is a Ruby on Rails SaaS template that lets you quickly deliver and ship business-ready web applications. It takes care of so much boilerplate and common configuration. I’ve been using it to build a small app for myself and love how easy it is to build production-ready applications. But it is not without some friction.
As a subscriber to Jumpstart Rails you are entitled to updates. The way you get those updates is by merging in changes from upstream. As your application grows the chances of merge conflicts increase. Part of the update process is to manage those conflicts, which can be a tedious process.
The things I do to smooth this process out:
- After merging changes from jumpstart/main, remove from the git index any files I for which know I do not want upstream changes
- Remove from the index and regenerate generated files such as yarn.lock and Gemfile.lock
- And the best course is to avoid making changes to core Jumpstart files where possible
To remove a file from the git index (and not delete the file) you can run:
git rm --cached <file>
A run a script after merging (and resolving conflicts) to regenerate my generated files:
#!/bin/bash
if [[ -f yarn.lock ]]; then
rm yarn.lock
fi
if [[ -f Gemfile.lock ]]; then
rm Gemfile.lock
fi
yarn install
bundle install
All of this makes applying Jumpstart Pro updates easier for me and I hope it helps you as well.