Git integration
Connect GitHub, GitLab, or Bitbucket once. PreviewDrop handles webhooks, PR comments, and cleanup for you.
Supported providers
- GitHub (cloud) — via the PreviewDrop GitHub App. Public and private repos.
- GitLab (cloud and self-hosted) — via personal/project access token + auto-installed webhooks.
- Bitbucket Cloud — via OAuth app + auto-installed webhooks.
GitHub Enterprise Server is on the roadmap. Email support@previewdrop.dev if you need it sooner.
Connecting GitHub
- Click
Connect repoin the dashboard and choose GitHub. - Install the PreviewDrop GitHub App on your personal account or an org you admin.
- Grant access to specific repos (recommended) or all repos. You can change this later in your GitHub settings.
- You'll be redirected back. The repos you picked show up in the repo chooser.
Connecting GitLab
- In GitLab, create a personal access token with
apiscope (or a project token withdeveloper+api). - In PreviewDrop's
Connect repoflow, choose GitLab and paste the token. - PreviewDrop installs a webhook on each selected project — you don't have to do anything manually.
For self-hosted GitLab, also provide your GitLab base URL (e.g. https://git.company.com).
Connecting Bitbucket
- Click
Connect repo→ Bitbucket and authorise the OAuth app. - Pick the workspace and repositories to expose.
- PreviewDrop installs webhooks automatically on the selected repos.
What triggers a deploy
Once a repo is connected, PreviewDrop deploys automatically on:
- Push to any branch — new commit → new deployment on the same branch subdomain.
- Pull request opened — fires a deploy and (if enabled) posts the URL as a PR comment.
- Pull request updated — a new push on the PR source branch → new deployment.
- Branch deleted or PR merged — the preview is stopped and scheduled for teardown.
[skip preview] anywhere in the commit message.PR comments
Turn on Post preview URL to PRs in Project Settings and PreviewDrop will add a comment to each PR the moment the preview is live:
PR comment🚀 Preview ready | Branch | URL | Status | |--------|------------------------------------------|--------| | feature/checkout-v2 | https://feature-checkout-v2-abc.previews.previewdrop.dev | ready (34s build) | Built from commit a1b2c3d. Comment will update on each new push.
The comment is idempotent — each new push edits the same comment instead of spamming threads.
Commit status checks
PreviewDrop also sets a commit status (GitHub) or pipeline status (GitLab / Bitbucket) so the green checkmark in your PR list is a real signal: it means the preview built and is reachable. If the build fails, the check fails with a link to the build log.
Monorepos
For repos with multiple deployable services, create one PreviewDrop project per service and set the Root directory for each. PreviewDrop will only rebuild a service when files inside its root directory (or a shared path you configure) change.
Project SettingsService: web Root: apps/web Trigger on: apps/web/** | packages/shared/** Service: api Root: apps/api Trigger on: apps/api/** | packages/shared/**
Disconnecting
Removing the provider integration stops all future deploys immediately. Existing previews keep running until their TTL expires — or you can stop them manually from the Deployments tab.