We've recently released several features in service of a broader vision to bring software engineering best practices for collaboration and peer review to data work. There’s been one last feature missing.
We’re really excited to show you the final piece of the Hex versioning suite: GitHub sync. Synced Hex projects will store every new version as a commit to a development branch in GitHub; the published app in Hex will remain in sync with the main branch.
As you build, save versions, and publish work, Hex will manage branches for you and automatically push to main when necessary. If you make changes to a project from outside of Hex, it’s easy to pull and sync them back into Hex.
You can also choose to require Pull Requests, which will add a step to the publishing workflow that requires a PR to be approved and merged on GitHub before a new Hex version can be published.
This unlocks a host of powerful abilities, allowing you to programmatically access and edit Hex projects. Some things you might find yourself doing:
- Running a find & replace across all Hex projects to replace a table name that’s been changed.
- Integrating with your project tracking tool to auto-close tasks when a project is published.
- Enforcing some über-custom linting scripts on your Hex code for org-specific code rules.
- Hooking up a printer to automatically spit out a hard copy of every Hex version so you can proudly send them to your family to stick on the fridge.