PHPackages                             jasny/dbvc - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. jasny/dbvc

AbandonedArchivedLibrary[Database &amp; ORM](/categories/database)

jasny/dbvc
==========

Database version control

v0.1.4(11y ago)232.5k↓88.9%6[9 issues](https://github.com/jasny/dbvc/issues)MITPHPPHP &gt;=5.3.2

Since Apr 25Pushed 10y agoCompare

[ Source](https://github.com/jasny/dbvc)[ Packagist](https://packagist.org/packages/jasny/dbvc)[ Docs](http://jasny.github.com/dbvc)[ RSS](/packages/jasny-dbvc/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (6)Used By (0)

DBVC
====

[](#dbvc)

The `dbvc` commandline tool allows you to manage your database schema updates in your version control (git) repository.

Configuration
-------------

[](#configuration)

DBVC looks for the `dbvc.json` configuration file.

```
{
  "db": {
    "driver": "mysql",
    "host": "localhost",
    "username": "root",
    "password": "open",
    "dbname": "foobar"
  },
  "datadir": "dev",
  "vcs": "none"
}

```

If `datadir` is omitted, it defaults to "dev". If `vcs` is omitted, the vcs is automatically determined.

### Supported database interfaces

[](#supported-database-interfaces)

- mysql

You may [issue a feature request](https://github.com/jasny/dbvc/issues) to support other DBMSs.

### Supported version control systems

[](#supported-version-control-systems)

- git
- none

You may [issue a feature request](https://github.com/jasny/dbvc/issues) to support other VCSs.

When using git, the correct order of the updates is automatically found by examining the git log.

When selecting vcs 'none', updates are run in [natural order](http://www.php.net/manual/en/function.natsort.php). It's up to you to prefix the update files with (for instance) a date, to make sure that run in the correct order

Usage
-----

[](#usage)

Show a list of commands

```
dbvc help

```

Show help on a specific command

```
dbvc help init

```

Initialise DBVC for an existing database.

```
dbvc init

```

Create a database dump. This is used to create the DB on a new environment.

```
mysqldump foobar > dev/schema.php

```

Create the DB using the schema.

```
dbvc create

```

Add an update file. These are used to update the DB on other environments.

```
echo 'ALTER TABLE `foo` ADD COLUMN `status` BOOL DEFAULT 1;' > dev/updates/add-status-to-foo.sql

```

Mark an update as already run.

```
dbvc mark add-status-to-foo

```

Show a list of updates that need to be run.

```
dbvc status

```

Show all updates with their status.

```
dbvc status --all

```

Update the database.

```
dbvc update

```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance13

Infrequent updates — may be unmaintained

Popularity27

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~24 days

Total

5

Last Release

4301d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3379a93d51305df325df9045e1a8b205d195e4e8c01312dff53a000ee79002eb?d=identicon)[jasny](/maintainers/jasny)

---

Top Contributors

[![jasny](https://avatars.githubusercontent.com/u/100821?v=4)](https://github.com/jasny "jasny (15 commits)")

---

Tags

databasemysqldbversioninggitvcs

### Embed Badge

![Health badge](/badges/jasny-dbvc/health.svg)

```
[![Health](https://phpackages.com/badges/jasny-dbvc/health.svg)](https://phpackages.com/packages/jasny-dbvc)
```

###  Alternatives

[fpdo/fluentpdo

FluentPDO is a quick and light PHP library for rapid query building. It features a smart join builder, which automatically creates table joins.

921244.9k7](/packages/fpdo-fluentpdo)[rah/danpu

Zero-dependency MySQL dump library for easily exporting and importing databases

64401.8k10](/packages/rah-danpu)[kohkimakimoto/lib-migration

LibMigration is a minimum database migration library and framework for MySQL.

1233.6k](/packages/kohkimakimoto-lib-migration)[smrtr/mysql-version-control

A crude version control system for mysql written in php

221.4k](/packages/smrtr-mysql-version-control)[davmixcool/php-dbcloud

Easily backup PostgreSql or MySql database to the cloud

111.5k](/packages/davmixcool-php-dbcloud)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
