Git Integration
Coming Soon — Git integration is currently in development. Contact us to be notified when it’s available.
Table of contents
- Overview
- Prerequisites
- Setup Instructions
- Advanced Configuration
- Troubleshooting
- Best Practices
- Next Steps
Overview
ButterStack integrates with Git to track asset changes, monitor commits, and streamline your development workflow. This guide will walk you through setting up Git integration for your projects.
Prerequisites
- Git repository (GitHub, GitLab, or Bitbucket)
- Admin access to your repository
- ButterStack project created
Setup Instructions
Step 1: Navigate to Source Control
- Open your ButterStack project
- Go to Settings → Integrations
- Click Add Integration
- Select Git from the available options
Step 2: Configure Repository
Enter your repository details:
Repository URL: https://github.com/your-org/your-repo.git
Branch: main
Authentication: SSH Key or Personal Access Token
Step 3: Authentication Setup
Option A: SSH Key (Recommended)
- Generate an SSH key for ButterStack:
ssh-keygen -t ed25519 -C "butterstack@your-domain.com" - Add the public key to your Git provider:
- GitHub: Settings → SSH and GPG keys
- GitLab: Settings → SSH Keys
- Bitbucket: Personal settings → SSH keys
- Paste the private key in ButterStack
Option B: Personal Access Token
- Generate a token with repository access:
- GitHub: Settings → Developer settings → Personal access tokens
- GitLab: Settings → Access Tokens
- Bitbucket: Personal settings → App passwords
- Enter the token in ButterStack
Security Note
Tokens should have minimal required permissions. For GitHub, only repo scope is needed.
Step 4: Webhook Configuration
Enable real-time updates by setting up webhooks:
- Copy the webhook URL from ButterStack:
https://app.butterstack.com/webhooks/git/YOUR_PROJECT_ID - Add webhook in your Git provider:
- GitHub: Repository → Settings → Webhooks → Add webhook
- GitLab: Settings → Webhooks
- Bitbucket: Repository settings → Webhooks
- Configure webhook events:
- ✅ Push events
- ✅ Pull request events
- ✅ Tag push events
Advanced Configuration
Branch Protection
Configure which branches trigger asset tracking:
Protected Branches:
- main
- develop
- release/*
Ignored Paths:
- docs/
- tests/
- *.md
Commit Message Parsing
Enable smart parsing to extract metadata from commits:
Pattern: \[(TASK-\d+)\] (.*)
Extract:
- Task ID
- Description
Asset Mapping
Map file patterns to asset types:
Textures: "**/*.{png,jpg,tga,dds}"
Models: "**/*.{fbx,obj,gltf}"
Audio: "**/*.{wav,mp3,ogg}"
Troubleshooting
Common Issues
Connection Failed
Symptoms: “Failed to connect to repository”
Solutions:
- Verify repository URL is correct
- Check authentication credentials
- Ensure ButterStack IP is whitelisted (if applicable)
- Test connection with:
git ls-remote <repo-url>
Webhooks Not Triggering
Symptoms: Changes not appearing in ButterStack
Solutions:
- Check webhook delivery logs in Git provider
- Verify webhook URL is correct
- Ensure webhook secret matches
- Check ButterStack webhook logs at Settings → Logs
Authentication Errors
Symptoms: “Authentication failed” errors
Solutions:
- Regenerate and update credentials
- Verify token permissions
- Check SSH key format (should start with
ssh-rsaorssh-ed25519) - Ensure no extra whitespace in credentials
Best Practices
Next Steps
Was this guide helpful? Let us know!