How to Set Up Two-Way GitHub Sync for HubSpot Actions
Connect your GitHub repositories to version control HubSpot custom actions, enable pull request code reviews, and automate deployments.
Why Git Version Control Matters for RevOps
In native HubSpot, custom code is edited directly in a browser text area without pull request reviews, branch protection, or Git history. A single accidental edit can break critical revenue workflows.
**Workflood Two-Way GitHub Sync provides:** - **Code as Source of Truth:** Push action code from your local IDE (VS Code, Cursor) or let edits in Workflood commit back to GitHub. - **Pull Request Code Reviews:** Review operational code changes before deploying to production HubSpot portals. - **Instant Rollbacks:** Revert to previous Git tags or commits with one click.
Connecting a GitHub Repository
- In Workflood, navigate to **Settings > Integrations > GitHub**.
- Click **Connect GitHub** and authorize the Workflood GitHub App on your organization or repository.
- Select your target repository (e.g., `your-org/hubspot-workflows`) and target branch (e.g., `main`).
- Select your synchronization directory (default: `/actions`).
Repository Directory Structure
Workflood structures action files neatly inside your repository with matching configuration manifests:
hubspot-workflows/
├── actions/
│ ├── lead-routing/
│ │ ├── handler.ts
│ │ └── config.json
│ ├── contract-renewal/
│ │ ├── handler.py
│ │ └── config.json
│ └── company-dedupe/
│ ├── handler.ts
│ └── config.json
└── README.mdBranching & Deployment Workflows
When a developer opens a pull request in your GitHub repository: - Workflood runs automated syntax and TypeScript type checks. - Once merged to `main`, Workflood automatically compiles and activates the new version in your production workspace.
Frequently Asked Questions
Can I edit code directly in the Workflood UI if GitHub sync is enabled?
Yes. When you save changes in the Workflood Monaco editor, Workflood automatically commits the change to your connected branch with a descriptive commit message.
