Git Integration
Using the git integration it is possible to synchronise the content of a git repository with Engine.
Use Cases
Generally it is recommended to store all your Engine resources in git. There are plenty of benefits:
- Use of your favourite offline editor
- Version history of all changes to your automation logic
- Collaboration between users easily possible
- An additional backup of your automation logic
- Branching, merging, rollback, ...
Concept
The legacy git integration (up to version 7) is not compatible with the git integration from version 8 and on. In version 8 both legacy and new git integration are supported. Beginning with version 9 the legacy git integration will be unsupported.
See here how to migrate to the new git sync.
The legacy git integration used to operate read-only. Meaning, no changes were made to a repository by Engine. From version 8 and on this changed to a two-way integration.
With git integration configured, all saved changes to resources in Engine are automatically synced to a remote repository that is provided by Engine as part of the workspace. This means, that whenever you change a flow script, enable or disable a schedule, rename a setting etc... a commit is generated and pushed upon saving.
On the other hand, you can also make changes to resources in your local repository and upon committing and pushing, these changes will be reflected in Engine.
Scope of the synchronisation
You can set up the synchronisation for projects, bundles or the workspace. Only resources within the given project or bundle will be tracked. The git integration for the workspace tracks resources that are not part of a project or a bundle (e.g. users). Activities (such as executions or messages) are not tracked by the git integration.
Folder structure
Tracked resources can be found in the designated cloudomation-resources
folder of the repository. Everything outside of this folder will be ignored by the git integration
and can be used for your own purposes e.g. readme files, templates, etc.
Initial Setup
Per default, the git integration is not set up. To enable the integration navigate to the project/bundle/workspace that you want to synchronize.