I’m just wanting to get some insight on how other people are handling their workflow with multiple Intuiface developers managing a development branch and production branch. As a programmer, I’m accustom to using tools like github or gitlab.
By using these tools, you can have a main branch and multiple development branches which get merged into the production branch when it’s ready for deployment. That way, the production branch is never contaminated and if there’s ever the need for a hot fix, it can be performed on the production branch and be part of the final release once the other branches are merged in.
I know there’s no real easy way to follow this workflow, but I was wondering if anybody would like to share their workflows to help come up with a bit more refined way of managing projects.
I can only share the Intuiface team experience when it comes to building samples for our Marketplace, which might be different from “real life customer projects”.
This is how we organize ourselves:
There is one XP owner, usually our CSM (myself or @Louie).
If we both have to work on the same XP, we take advantage of our time zone difference and communicate on who’s working on it and when. The “share as write” mechanism also ensures we aren’t working in Edit mode at the same time on the same XP.
We publish our XP version 0.1 and share it as a reader with our team members: Graphic designers + @geoff and/or @Chloe for marketing / text content
They share with us via email / Dropbox the content they want us to integrate.
Graphic Designers might make a copy of the XP, name it “Sample X - Designer”, then share it back with us. In that case, we open 2 Composers side by side to integrate their design updates into the main XP.
Once we have a version 0.9 ready, we switch the sharing rights (usually with Geoff) for last minor updates (wording) giving him writer access.
Once we have a version 1 ready, all sharing rights are deleted or at least set back to read-only.
After that, it’s very rare we go back to these XPs and make additional updates.
When it happens, 2 options:
Minor update: we do them directly in the “main branch”, aka the published XP, and test locally on our devices before publishing the official update
If we need to publish to test on a non-Windows device, after making the updates, we make a quick copy, publish and test that copy.
Major update: we create a copy of the published experience. When this copy is ready, we delete the previous one and publish the new one instead (same name, but different XP unique ID within the ifx, transparent for the end users).
I know most of our Marketplace experiences are quite simpler than “real life” experiences, but, in my very personal opinion, I still believe than if the XP architecture is well thought and most content is outsourced to the H-CMS or other external data sources, most of the job done within Intuiface Composer can be done by a single person.