Examples Templates Store Pricing Docs Turbo CSS Blog Introducing Turbo UI Named buckets Turbo CSS is Tailwind CSS on steroids Introducing Turbo CSS, the most advanced web-design language Calculate how much storage you use Better login system Collaboration settings Filesystem and Database are not cutting the problem space right What I'm working on 64bit File node IDs New how-to videos Creating buttons gets easier Introducing reusable components HTTPS by default Introducing the Boomla Theme CDN for faster pageloads Write your own website builder on top of Boomla On On composition Shared admin access A fresh config editor Building a multi-purpose theme A filesystem to replace your CMS New file link type: scope Mobile editing support Inline file wrapping changed Package sandboxing New PHP-like JavaScript engine [sjs-4e] Send emails to the website owner New JavaScript engine [sjs-4] A better editing experience New email service provider Glossary and other changes New panel changes Improved registration flow Boomla goes multiplayer Using local dev tools Why Boomla doesn't need Git File Panel Let's build a community Automatic updates Improved sjs-3 API New Frontend CSS modules Work offline with Boomla Faster page loads via caching Drag & drop supercharged Supporting CommonJS modules  Paranoid about loosing data IDE usability improvements Simple App install flow Meetups in Budapest Goodbye broken links Flow control from user space Customizing apps Contextmenu support for apps Deprecating the .Class file Hello Changelog Embedding 3rd party plugins Introducing Tools Installing apps just got amazing Public beta Host on our servers Simple deploy with push/pull Version Control for the Web 350M files on a 1TB disk 2 weeks in review
Control Panel

Version Control for the Web

2016-03-29

It feels like an eternity since I last wrote. Finally, Boomla v0.1.0 is out with with version control support.

In my last post I mentioned storing lots of files in a single parent was a requirement for a secret feature I was working on. This is it. Version control and the all mighty undo button.

 

Feature summary:

  • boomla.me control panel,

  • undo, redo,

  • commit, checkout,

  • branch, publish,

  • incremental storage,

  • lightning fast.



Undo, redo

The toolbar now includes an undo & redo button. It allows rolling back and forth the most recent changes (currently 50).

toolbar (2).png

 

Control Panel

The rest of the version control features are only accessable via the Control Panel website, which is now accessible from boomla.me, a built-in website bundled wit the Boomla binary. boomla.me and all its subdomains point to your local machine, so this domain is intended for local development. Read: you won’t need to update the hosts file on your machine every time you create a new website or branch.

The Version tab of the toolbar contains quick links to the most common features, like commiting or branching.

Commiting changes

Once you are done with your changes, you can create a permanent snapshot of the website via a commit. Note that commiting your changes drops your undo history, so you can at most undo up to the latest commit.

You can always roll back you website to any committed state, so the more frequently you commit your changes, the safer you are.

Branching

At any time you can create a new branch from your website. This will create a subdomain, say feature.example.com. The benefit of working on a branch instead of the public website is that changes won’t be immediately published. Read: you can fuck up the website without your visitors noticing.

Also, your results can be shared with others to gather feedback without actually publishing the changes or sending around email attachments.

Publishing

If you are happy with your changes to the branch you have started, simply publish it, which will replace the public website with the given branch.

More sophisticated merging options are not supported for now. Read: if the public website changed after you created the branch, you will have to manually merge your changes.

Incremental storage

Creating a new branch doesn’t duplicate the data, only the changes are stored as you go. This makes branching fast & cheap.

Fast

All the version control features are lightning fast. Can’t describe, go give it a try.

Migration

You will need to migrate your old workspaces to take advantage of version control.

To migrate an old workspace export your site via boomla posix export ..., then create a new workspace with the new Boomla binary and import it in the new workspace via boomla posix imoprt ....

You will also need to download the latest demo-website and overwrite your /sys subtree with the one in the workspace. This will update your toolbar.

More details

If you want more details, head to the Version Control docs.

 


Cheers,

you can follow me on Twitter