External Sync / Introduction / Application scenarios / Distributed editing of FS objects

Scenario: Distributed editing of FirstSpirit objects

In this scenario, several developers work on a project in a distributed manner:

Development within the local development environment

The development is carried out in each developer’s local development environment. Each developer therefore uses their own local FirstSpirit Server and their own local FirstSpirit project (“FirstSpirit Development Project”). From there, the relevant development state is exported to the local file system via External Synchronization.

The FirstSpirit API is used for access. The corresponding commands (“fs-cli export”, “fs-cli import”) are called up via the FSDevTools command line tool and executed internally via the FirstSpirit API.

The FirstSpirit objects exported in this way (templates, media, content, etc.) are transferred to the local file system in a readable format (xml, jsp, etc.). From there, the files can be edited via an IDE.

Versioning via a version control system

For a successful collaboration, the (further) development must always be carried out in the most current state possible; in other words, the modifications made by a developer must be made available in the other developers’ projects promptly. Each developer must also regularly export the development state of the FirstSpirit objects, publish their local modifications, and update the changes made by other developers in their local project.

The exported project content is also versioned using a version control system (here: Git). This means that each local development environment can fall back on its own local Git repository. In addition to the local repositories, there is also a further central Git repository (“remote Git repository”). Each developer pushes their modifications to the central repository. All developers involved can then adopt these changes in their own local repository and import them into the local project via External Synchronization.

As a result, the local development states can be synchronized with the current (central) development state at any time.

© 2005 - 2022 Crownpeak Technology GmbH | All rights reserved. | FirstSpirit 2023.2 | Data privacy