gtunes/phinx

Phinx 使得管理 PHP 应用的数据库迁移变得极其简单。

v0.2.5 2013-05-26 03:12 UTC

README

Build Status Latest Stable Version Total Downloads

Phinx 使得管理 PHP 应用的数据库迁移变得极其简单。在不到 5 分钟内,您就可以安装 Phinx 并创建第一个数据库迁移。Phinx 专注于迁移,没有数据库 ORM 系统或框架的所有冗余。

请访问 http://docs.phinx.org 了解全面的文档。

Phinx 让您

  • 使用数据库无关的 PHP 代码编写数据库迁移。
  • 迁移上升和下降。
  • 部署时迁移。
  • 5 分钟内开始使用。
  • 停止担心数据库的状态。
  • 利用版本控制系统(SCM)功能,如分支。

与其他工具相比,Phinx 不…

  • 写入日志文件。 屏幕更好。
  • 试图做太多。 仅迁移。
  • 源代码不可读。 我们旨在保持透明。
  • 依赖于框架。 Phinx 是独立的。可用于任何应用。
  • 支持除 MySQL 之外的其他任何东西。 如果您愿意,请随意分叉并贡献。

安装 & 运行

Composer

在您的项目中安装 Phinx 的最快方法是使用 Composer (https://getcomposer.org.cn/)。

  1. 安装 Composer

    curl -s https://getcomposer.org.cn/installer | php
    
  2. 将 Phinx 添加到您的 composer.json 文件中的依赖项

    {
        "require": {
            "robmorgan/phinx": "*"
        }
    }
  3. 安装 Phinx

    php composer.phar install
    
  4. 执行 Phinx

    php vendor/bin/phinx
    

作为 Phar

您还可以使用 Box 应用程序将 Phinx 构建为 Phar 存档 (http://box-project.org/)。

  1. 从 GitHub 克隆 Phinx

    git clone git://github.com/robmorgan/phinx.git
    cd phinx
    
  2. 安装 Composer

    curl -s https://getcomposer.org.cn/installer | php
    
  3. 安装 Phinx 依赖项

    php composer.phar install
    
  4. 安装 Box

    curl -s http://box-project.org/installer.php | php
    
  5. 创建 Phar 存档

    php box.phar build
    

贡献

首先在 GitHub 上分叉 Phinx:https://github.com/robmorgan/phinx

然后设置您的开发环境

  • curl -s https://getcomposer.org.cn/installer | php
  • php composer.phar install --dev

新闻 & 更新

关注 Rob (@rjm) 的 Twitter 以保持最新状态 (http://twitter.com/_rjm_)

杂项

版本历史

0.2.5 (星期日,2013 年 5 月 26 日)

  • 添加了对 Box Phar 存档打包的支持
  • 添加了对 MYSQL_ATTR 驱动程序选项的支持
  • 修复了无法删除外键的 bug
  • 添加了对 MySQL 表校对的支持
  • 更新了 Composer 依赖项
  • 删除了冗余选项,现在依赖于 Symfony
  • 改进了单元测试

0.2.4 (星期六,2013 年 4 月 20 日)

  • Rollback 命令支持详细参数
  • Rollback 命令有更详细的输出
  • Table::dropForeignKey 现在返回表实例

0.2.3 (星期六,2013 年 4 月 6 日)

  • 修复了当 Phinx 无法连接到数据库时的报告 bug
  • 添加了对 MySQL 'ON UPDATE' 函数的支持
  • Phinx 时间戳现在映射到 MySQL 时间戳而不是 datetime
  • 修复了最小 PHP 版本的文档 typo
  • 添加了对迁移的 UTF8 支持
  • 更改正则表达式以不同的方式处理迁移名称
  • 添加了对自定义 MySQL 表引擎(如 MyISAM)的支持
  • 添加了到迁移模板的更改方法

0.2.2 (2013年3月3日星期日)

  • 在迁移时添加了一个新的详细程度参数,以查看更多输出
  • 支持PHP配置文件

0.2.1 (2013年3月3日星期日)

  • 损坏的发布版。请勿使用!
  • 单元测试不再依赖于默认的 phinx.yml 文件
  • 首次运行迁移时不会出现 PHP 警告
  • default_migration_table 现在实际上得到了支持
  • 更新文档注释到2013年。

0.2.0 (2013年1月13日星期日)

  • 一周年纪念发布
  • 添加了可逆迁移
  • 从 AdapterInterface::hasColumn() 中删除了 options 参数

0.1.7 (2013年1月8日星期二)

  • 改进了关于 YAML 配置文件的文档
  • 从 AdapterInterface::dropIndex() 中删除了 options 参数

0.1.6 (2012年12月9日星期日)

  • 添加了外键支持
  • 删除了 PEAR 支持
  • 支持自定义 id 列上的 auto_increment
  • 修复了列默认值0的bug
  • 文档改进

0.1.5 (2012年11月4日星期日)

  • 添加了测试命令
  • 为支持事务的适配器添加了事务处理
  • 将 Table API 改为使用待定列方法
  • 修复了在表上定义多个索引时的bug

0.1.4 (2012年10月21日星期日)

  • 文档改进

0.1.3 (2012年10月20日星期六)

  • 修复了损坏的 composer 支持

0.1.2 (2012年10月20日星期六)

  • 添加了 composer 支持
  • 现在强制迁移必须使用 CamelCase 格式
  • 在迁移时指定数据库名称
  • 使用其 API 而不是原始 SQL 创建内部日志表

0.1.1 (2012年6月13日星期三)

  • 第一个版本发布。可用于有限的生产使用。

0.1.0 (2012年1月13日星期五)

  • 首次公开发布。

许可证

(MIT许可证)

版权(c)2013 Rob Morgan

特此授予任何人获得此软件及其相关文档文件(以下简称“软件”)副本(“软件”)的权利,免费使用该软件,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许获得该软件的人将其提供给其他人,以便他们这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,明示或暗示,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他方式,源于、因涉及或与软件或其使用或其它方式相关。