thatobabusi/laravel-migrations-ui

Laravel数据库迁移的基于Web的图形用户界面。

1.0.3 2020-02-29 17:12 UTC

This package is auto-updated.

Last update: 2024-09-27 20:10:35 UTC


README

**截至2020年7月27日,我创建了此分支以接管并单独使用它,因为Dave不再支持主仓库。此外,当我执行composer install/update/dumpautoload等操作时,也厌倦了收到“包不再受支持”的通知。

Thato

截至2020年4月18日,Laravel Migrations UI不再维护。

我最初计划构建一个用于生成迁移的GUI,而不仅仅是运行迁移,但这花费了大约18个月才取得目前的进展(原始的线框图最初不在Git中)而且我认为我不太可能很快回过头来做这件事。

如果您想创建自己的分支以修复错误或添加新功能,请参阅下方的说明。MIT许可证要求您保留版权声明和许可信息,但除此之外,您可以自由地使用代码和文档。

Dave

Laravel Migrations UI

Latest Stable Version Total Downloads Monthly Downloads License Latest Unstable Version Build Status Coverage Status

Laravel的基于Web的GUI,用于(即将推出)创建(运行迁移)。

目录

兼容性图表

安装

composer require --dev thatobabusi/laravel-migrations-ui

可选:发布和编辑配置文件(config/migrations-ui.php

php artisan vendor:publish --tag=migrations-ui-config

然后访问/migrations(或配置文件中设置的路径)。

出于安全考虑,默认情况下,如果APP_ENV=localAPP_DEBUG=true,或者您在.env中设置MIGRATIONS_UI_ENABLED=true,则Migrations UI才会激活。您不应在生产环境或任何公开访问的环境中启用它,这将是一个重大的安全漏洞!

贡献

文档:如果您认为文档可以在任何方面得到改进,请编辑此文件并创建一个pull request。

错误修复:请修复它并创建一个pull request。有关更详细的说明,请参阅下文。(如果添加了单元测试以确保不会再次发生,则可获得加分!)

新功能:请构建它并创建一个pull request。如果您在开始大量工作之前想要讨论,请创建一个原型(可以是代码或文档)并创建一个草稿PR以讨论详细信息。

创建pull request

在Laravel Migrations UI上工作的最简单方法是告诉Composer使用--prefer-source标志从源(Git)安装它

rm -rf vendor/thatobabusi/laravel-migrations-ui
composer install --prefer-source

然后检出master分支并创建自己的本地分支进行工作

cd vendor/thatobabusi/laravel-migrations-ui
git checkout -t origin/master
git checkout -b YOUR_BRANCH

现在进行您的更改,包括单元测试和文档(如果适用)。运行单元测试以确保一切正常工作

scripts/test.sh

然后提交更改。如果您还没有这样做,请在GitHub上Fork仓库,并将您的更改推送到它

git remote add YOUR_USERNAME git@github.com:YOUR_USERNAME/laravel-migrations-ui.git
git push -u YOUR_USERNAME YOUR_BRANCH

最后,浏览到GitHub上的仓库并创建一个pull request。

(或者,您可以使用测试应用.)

在项目中使用您的Fork

要使用您自己的Fork在项目中,按照以下方式更新主项目中的composer.json

{
    // ADD THIS:
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/YOUR_USERNAME/laravel-migrations-ui.git"
        }
    ],
    "require": {
        // UPDATE THIS:
        "thatobabusi/laravel-migrations-ui": "dev-YOUR_BRANCH"
    }
}

YOUR_USERNAME替换为您的GitHub用户名,将YOUR_BRANCH替换为分支名称(例如develop)。这告诉Composer使用您的仓库而不是默认仓库。

单元测试

要运行单元测试

scripts/test.sh

要检查代码覆盖率

scripts/test-coverage.sh

然后打开test-coverage/index.html来查看结果。请注意,PHPUnit中的边缘情况可能会使其不够准确。

Laravel的新版本

composer.json中没有指定最大版本,因此不需要每6个月发布新的Laravel Migrations UI版本。但是,需要更新此文件以针对新版本运行测试

  • .travis.yml
    • matrix(Laravel版本)
    • php(PHP版本)
    • exclude(不受支持的组合)

如果需要更改,请也更新

如果向后不兼容的更改导致Laravel或PHP的最低支持版本发生变化,请更新

发布新版本

本节仅适用于维护者。

  • 确保单元测试已更新并具有100%的覆盖率(对于PHP代码)
  • 在生产模式下构建资源(yarn build),如果有所更改则提交
  • 如果适用,更新测试应用,并手动测试它
  • 确保README是最新的,包括
  • (如果需要)将更改合并到master分支
  • 将代码更改推送到GitHub(git push
  • 确保所有测试都通过
  • 标记发布(git tag 1.2.3
  • 推送标签(git push --tag

无技术支持

抱歉,我不提供任何技术支持,GitHub问题已禁用。这意味着我不会找出为什么它对您不起作用,我不会为您修复错误,也不会根据您的要求编写新功能——毕竟这是免费软件。

但是开源的魅力在于您可以随心所欲地使用它!您可以Fork它、修复它、改进它并扩展它。如果您不想维护自己的Fork,并且认为其他人会从您的更改中受益,您可以将更改提交为pull request,以便您的更改包含在下一个版本中。

如果您真的卡住了,我建议您

  1. 阅读并重新阅读此文件和Laravel文档,看看是否有什么遗漏。
  2. 深入了解源代码,花些时间弄清楚它应该如何工作以及实际上发生了什么。
  3. 尝试在一个全新的Laravel项目中重现问题,以防它是与另一个包或您的其他代码的不兼容性。
  4. 如果您在一个团队中工作,请让您的同事帮助您调试。
  5. 请经验更丰富的人帮助您(或者如果您在一家公司工作,请让您的老板支付他们的费用)。
  6. 尝试在 Stack OverflowLaravel.io 论坛Laracasts 论坛 上发表帖子(但我不保证有人会回答 - 他们也没有报酬)。
  7. 使用不同的包。
  8. 自己编写。

变更日志

Laravel Migrations UI 使用 语义化版本控制

v1.0.3(2020年2月29日星期六)

  • 修复了 Telescope 迁移没有被选中,因为它们只在控制台中注册的问题
  • 当任何动作运行时,将所有按钮变灰

v1.0.2(2020年2月23日星期日)

  • 更好的错误处理,针对各种边缘情况
  • 从生产构建中排除了一些不必要的文件

v1.0.1(2020年2月23日星期日)

  • 修复了 Laravel 5.6、5.7 中的错误(Collection 类没有 join() 方法)

v1.0.0(2020年2月22日星期六)

  • 第一个稳定版本

许可

MIT 许可证

版权所有 © 2019-2020 Dave James Miller

本软件及所附文档文件(以下简称“软件”)的副本,任何人均可免费获得,并可不受限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许获得软件的人进行此类操作,但须遵守以下条件

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

本软件按“原样”提供,不提供任何形式的质量保证,无论是明示的、暗示的,还是与特定目的相关的,或侵犯版权的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论该索赔、损害或其他责任是因合同、侵权或其他原因引起的,以及与软件或软件的使用或其他操作有关。