Skip to main content

Git Workflow for Transformation Projects

Connect a Git account to import private dbt repositories and send project changes back through a feature branch.

Supported Providers

ProviderHosted authenticationSelf-hosted authentication
GitHubOAuth, personal access token, or SSH keyPersonal access token or SSH key
GitLabOAuth, personal access token, or SSH keyPersonal access token or SSH key
Azure DevOpsOAuth or personal access tokenNot currently available
Git serverNot availableUsername and token/password, or SSH key

OAuth is available for the hosted GitHub, GitLab, and Azure DevOps services. Use a token or SSH key for a supported self-hosted GitHub or GitLab server.

  1. Navigate to SettingsLinked accounts
  2. Click Link account
  3. Choose the provider
  4. Select an authentication method
  5. Complete authorization or enter the requested credential
  6. For a token or SSH account, enter an account name. For OAuth, Supaflow assigns a name automatically; expand Advanced options to customize it

Choose a Git provider when linking an account

Linked accounts are personal to you. Other workspace members cannot use your stored credentials, and commits and pushes use your provider identity.

You can link more than one account for the same provider. This is useful when you work with separate personal and company repositories.

Import a dbt Project

When creating a transformation project:

  1. Choose Import from Git
  2. Enter the repository URL
  3. Select a Linked Git account when the repository is private or uses SSH
  4. Optionally enter a Git ref and dbt project subdirectory
  5. Create the project

Import a transformation project from Git

Public HTTPS repositories can be imported without a linked account.

Import runs as a background job. Wait for the project to finish provisioning before opening its files. If import completes but the Git view is not available, refresh the project once.

Make and Publish Changes

Git-backed projects keep the default branch read-only in Supaflow.

  1. Select Git above the project explorer
  2. Under Personal branch, select an existing feature branch or Create new branch…, then wait for branch creation to complete
  3. Edit and save project files
  4. Select a changed file under Changes to review its diff
  5. Stage files individually, or click Stage all
  6. Enter a commit message and click Commit
  7. When the commit completes, click Push branch
  8. Click Create pull request to continue with your Git provider

Review a changed file before staging it

Open a pull request after pushing the branch

Pull before pushing when the remote branch has advanced. If a pull reports conflicts, resolve the affected files before retrying.

A newly created personal branch exists only in the Supaflow project until you push it. After a successful push, the branch is available in the Git provider and the project reports no unpushed commits. Create pull request opens the provider workflow; Supaflow does not create or approve the pull request itself.

Discard removes the selected uncommitted change from the Supaflow project. Review the diff first; discarded work cannot be recovered from a commit unless it was committed previously.

Reconnect an Account

Supaflow marks a linked account Reconnect required when the provider rejects or expires its authorization.

  1. Navigate to SettingsLinked accounts
  2. Find the affected account
  3. Click Reconnect
  4. Complete the provider authorization or replace the credential

After reconnecting, retry the Git action that failed.

Limitations

Supaflow does not currently run GitHub Actions or other CI workflows.

Troubleshooting

No linked account matches the repository

Problem: The import or Git panel does not offer the account you expected.

Solution: Confirm the linked account and repository URL use the same Git host. For SSH URLs, select an SSH linked account. For a self-hosted service, use a token or SSH key rather than hosted OAuth.

Commit is disabled

Problem: Files are changed, but the Commit button is unavailable.

Solution: Under Personal branch, create or select a feature branch. Then select a Linked Git account, stage at least one file, and enter a commit message. The default branch is read-only.

Push is rejected

Problem: The remote branch advanced or diverged.

Solution: Pull the latest remote changes, resolve any conflicts, commit the result, and push again.

Support

Need help? Contact us at support@supa-flow.io