Windmill Labs
Windmill

Deployment & versioning

Deploy in one click. Version with Git.

Every script, flow, and app is versioned on every deployment. Connect a Git repository for full source control and CI/CD.

What is versioning in Windmill

Windmill keeps an immutable history of every script, flow, and app deployment. Compare any two versions side by side, roll back in one click, or sync everything to Git.

Deploy in one click

Scripts, flows, and apps can be written, tested, and deployed from the browser. Each deployment creates a new immutable version. All three support draft mode to iterate without affecting production.

Read the docs
Screenshot coming soon

Deployment history

Every deployment is tracked with a message, a unique hash (similar to a git commit SHA), and a side-by-side diff viewer. Any past version can be forked or restored. Hash-based webhook URLs let you pin integrations to a specific version.

Read the docs
Screenshot coming soon

Git sync

When connected to a Git repository, every deployment is automatically committed. Changes can also be pulled from Git, making the repository the single source of truth. Works with GitHub, GitLab, Bitbucket, and Azure DevOps.

Read the docs
Screenshot coming soon

Workspace forks

Workspace forks (Enterprise) are independent copies of a workspace for parallel development. Scripts, flows, apps, resources, variables, and schedules are all included. Teams can work on features or experiments in a fork without affecting the production workspace. Each fork can track its own Git branch, and changes from the parent workspace can be pulled into the fork to stay up to date.

Read the docs
Screenshot coming soon

Merge UI

Forks can be merged back to their parent workspace from the UI with conflict detection. For more granular resolution, a Git-based merge workflow is also available.

Read the docs
Screenshot coming soon

Deploy from the CLI

The Windmill CLI syncs a workspace to a local folder. Push changes from your terminal or deploy from the UI. Either way, changes are committed to your Git repository. See the local development page for the full local workflow.

Read the docs

From local to production

wmill sync push
Deploy on Windmillauto
Commit to Gitauto
Available on the UIauto

From UI to local

Deploy from the UI
Commit to Gitauto
wmill sync pull
Files updated locallyauto

Frequently asked questions

Build your internal platform on Windmill

Scripts, flows, apps, and infrastructure in one place.