Git for PostgreSQL. Finally.

Version control your database schemas and data using Git semantics, directly inside PostgreSQL. No external dependencies. Just SQL.

Get Started Free View on GitHub Live Demo
-- Monday: Create a feature branch with real data
SELECT pggit.create_branch('feature/user-profiles');

-- Tuesday: Make changes safely
ALTER TABLE users ADD COLUMN avatar_url TEXT;

-- Wednesday: Merge back with zero conflicts
SELECT pggit.merge('feature/user-profiles', 'main');
-- Result: 'MERGE_SUCCESS' ✓

Everything You Need. Nothing You Don't.

All features are completely free and open source under MIT license. No premium tiers, no hidden costs.

🌿

True Database Branching

Create isolated branches with real data. Work on features without affecting production. Copy-on-write ensures efficient storage.

🔀

Three-Way Merge

Intelligent conflict resolution just like Git. Automatic merges for non-conflicting changes, clear reporting when manual review is needed.

Time Travel

Go back to any point in your database history. See exactly what changed, when, and by whom. Perfect for debugging and auditing.

🚀

Zero-Downtime Deployments

Deploy schema changes without downtime. AI-powered migration analysis identifies potential issues before they happen.

📊

Complete Audit Trail

Every change is tracked automatically. Perfect for compliance (SOX, HIPAA, GDPR). Know who changed what, when, and why.

PostgreSQL Native

Built as a PostgreSQL extension. No external dependencies, no learning curve. If you know SQL, you know pgGit.

Simple. Powerful. PostgreSQL Native.

1

Install (2 minutes)

Single command installation. Works with any existing PostgreSQL database.

git clone https://github.com/evoludigit/pgGit.git
cd pgGit
make && sudo make install
psql -c "CREATE EXTENSION pggit"
2

Branch (30 seconds)

Create branches and make changes just like with Git, but for your database.

-- Initialize pgGit
SELECT pggit.init();

-- Create a branch
SELECT pggit.create_branch('feature/new-ui');

-- Make changes
ALTER TABLE users ADD COLUMN theme VARCHAR(50);
3

Merge (Instant)

Review and merge changes with confidence. Automatic conflict detection and resolution.

-- Review changes
SELECT * FROM pggit.status();

-- Merge when ready
SELECT pggit.merge('feature/new-ui', 'main');

How pgGit Compares

Feature Traditional Tools pgGit
Schema Tracking Basic Comprehensive
Database Branching Not Available True Git-like
Data Branching Not Available Copy-on-Write
Merge Conflicts Manual Three-way detection
Time Travel Limited Any point in time
Storage Efficiency Full copies Compressed COW
PostgreSQL 17 Basic support Native integration
Price 💰 $1000s/year Free (MIT)

Ready to Git Your Database?

Join developers who are already using pgGit to version control their PostgreSQL databases

Get Started on GitHub Try Live Demo
# Install in 2 minutes
git clone https://github.com/evoludigit/pgGit.git
cd pgGit && make && sudo make install