Git source control
UI Bakery source control is a Git-based version control system that allows you to manage your app's changes and collaborate with other developers. UI Bakery operates on the Git-API level, which means you can use any Git provider, such as GitHub, GitLab, BitBucket, etc.
- Parallel development of a single application by multiple developers;
- Multi-instance support - multiple instances of UI Bakery connected to the same Git repository;
- Branch protection - you can protect branches from being changed directly in UI Bakery;
- Consistent development process: maintain the development process that is familiar to your team, including testing, code reviews, and deployment.
- Any app created in UI Bakery can be connected to a Git repository.
- When you connect an app to a Git repository, a new branch is created in the repository. This branch is called main. Main branch is protected from being changed directly in UI Bakery.
- To make changes to the app, a developer creates a new branch from the main branch.
- When the developer is done with the changes, they can commit and push the changes to the Git repository.
- The developer can then create a pull request to review and merge the changes to the main branch.
- Once the PR is approved and merged, the changes need to be pulled to the UI Bakery instance, reviewed, and deployed using the standard UI Bakery workflow.
In a case a multi-instance setup is preferred, you can connect multiple UI Bakery instances to the same Git repository. This is useful when you want to have a staging and production instance of the same app.
- Upon app creation, choose Import from Git option.
- Enter the Git repository URL.
- Copy an SSH key suggested by UI Bakery and create a new key under the Deploy keys settings. Here's a guide on how to do this on GitHub:
- 1.Open your repository settings and go to Deploy keys.
- 2.Click Add deploy key and paste the key.
- 3.Click Allow write access. - Click Add key.
- Now the app is connected to the Git repository and can be pulled and deployed when new changes are available.
When you connect multiple UI Bakery instances to the same Git repository, you need to make sure that app data sources have exactly the same names in all instances, as the data source names are used as a unique identifier for data sources in the app actions.
A typical UI Bakery application is broken down into files system structure upon pushing to the Git repository. The following app sources are stored in the Git repository:
- App settings;
- App pages and components;
- App actions with folders structure.
The following is NOT stored and is a part of a UI Bakery instance:
- Instance data sources;
- Deployment history;
- Environment variables;
- Audit logs.