Maestro SCM Overview

   MaestroThe UI design product.  |   Form BuilderPlatform Developer  |   17.10 This feature was updated in 17.10.

Journey Maestro comes with the Source Code Management (SCM) command line interfaceA command line interface (CLI) is a text-based user interface (UI) used to view and manage computer files. (CLI) that enables you to integrate your Maestro projects with external source code management systems, such as Git or SVN. It provides support for collaborative Journey form development using a flexible approach towards version control allowing you to use various source control strategies, such as feature branches, to work on new features or bug fixes simultaneously using the same form code.

Getting Started

To start using Maestro SCM, you need a few things set up first:

  1. Maestro SCM requires Java 8 or later installed on your computer. If you don't have Java installed, you need to download a JDK runtime for your operating system, which are available for Linux, Mac and Windows.
  2. Obtain a user account to log in to the Maestro server that you will be integrating with.
    Note

    The user account must be assigned with the Maestro SCM Project role.

  3. Download the latest SCM version from our community web site.
    Note

    You must be logged into the community web site to be able to download installers.

  4. Unpack the archive into a directory on your computer.

Using Maestro SCM

Maestro SCM is similar to Git CLI, so you will get the hang of it fairly quickly.

To start using the SCM client:

Windows

Run the scm.bat file on your local computer:

Linux or Mac

Open a terminal and type the following command:

To list all SCM commands and get help, type help at the prompt.

$ help
Maestro Source Code Management (SCM) shell, version 19.5.0
Type help 'name' to find out more about a named command:

cd                      Change the current working directory.
ls                      List the files in the current or specified directory.
cat                     Displays the contents of a text file.
start                   Start the specified program or OS shell command.
del                     Delete the specified file or empty directory.
cls                     Clear the screen.
rm                      Delete the specified file or empty directory.
dir                     List the files in the current or specified directory.
pwd                     Print working directory path.
type                    Displays the contents of a text file.
mkdir                   Make a new directory.
scm                     Maestro Source Code Management (SCM) integration commands.
scm connect             Connect to remote Maestro server.
scm design clone        Clone remote design to the local directory.
scm design diff         Compare differences between local design files and remote design.
scm design pull         Pull remote design file differences to local directory.
scm design push         Push local design file differences to remote design.
scm design rm           Remove remote design file.
scm design status       Compare local design files with remote design files.
scm library clone       Clone remote library files to the local directory.
scm project add         Add a new project to Maestro server using local project files.
scm project clone       Clone remote server project to the local directory.
scm project diff        Compare differences between local project and remote project.
scm project delete      Delete remote server project.
scm project list        List remote server projects.
scm project pull        Pull remote project file differences to local project.
scm project push        Push local file differences to remote project.
scm project rm          Remove remote project file.
scm project status      Compare local project files with remote project files.

For more information on how to use Maestro SCM, see SCM Quick Start for your Maestro version.

You can migrate your existing Maestro projects to SCM projects to align form development with your existing practices.

Next, learn how to use Maestro SCM to implement a Git Feature Branch workflow.