Source Control
Definite can export workspace object definitions to a customer-owned GitHub repository through a GitHub App installation. Definite remains the source of truth in v1; GitHub receives pull requests with reviewable files.
GitHub App setup
Create a GitHub App in the GitHub organization that owns the destination repository. Grant the app access only to the repository Definite should write.
Required repository permissions:
| Permission | Access |
|---|---|
| Metadata | Read |
| Contents | Read and write |
| Pull requests | Read and write |
Generate a private key for the app, install the app on the selected repository, and record the app ID, client ID, client secret, installation ID, owner, repo, and default branch.
In Definite, open Settings -> Source Control and enter the GitHub App and repository details. Definite encrypts the private key and client secret at rest with the same key-rotation path used for integration secrets.
Exported objects
The first sync version exports these objects under the configured path prefix
(Definite/ by default):
| Object | Path |
|---|---|
| Semantic models | semantic/<name>.yaml |
| Transformation projects | transformations/<slug>/manifest.json |
| Data apps | data-apps/<slug>/app.json and data-apps/<slug>/source/** |
| Automation pipelines | automations/<pipeline-id>.json |
Use Preview to see generated files without contacting GitHub. Use
Compare to compare those files with the configured GitHub branch. Use
Open PR to create or update the definite-object-sync branch and open a
pull request against the configured base branch.
Scope
V1 is export-only. Editing files in GitHub does not automatically apply changes back into Definite. Use the existing CLI/API flows to apply semantic models, transformation projects, data apps, and automations back into the deployment.