symfony - 手动更新 Symfony2 deps 文件以获取 Doctrine 2.2?

标签 symfony pagination doctrine-orm

是否可以手动更新 deps 文件以获取最新版本的 Doctrine 2.2?我想使用新的 Paginator成分。所以基本上我想调整 deps :

[doctrine-common]
    git=http://github.com/doctrine/common.git
    version=2.2.1

[doctrine-dbal]
    git=http://github.com/doctrine/dbal.git
    version=2.2.1

[doctrine]
    git=http://github.com/doctrine/doctrine2.git
    version=2.2.1

删除deps.lock并执行以下操作:

php bin/vendors update

你认为这可行吗?

编辑:文件将如下所示:http://pastebin.com/FEDMNhii

最佳答案

在我看来,gilden建议的所有工作是不必要的和过于谨慎的。当然,您可以根据需要手动更新 deps 文件。我目前在 Symfony 2.0.11 上运行 Doctrine\Common (2.2.1)、Doctrine\DBAL (2.2.1) 和 Doctrine (2.2.1),没有出现任何问题。

(通常)您需要担心的不是库,而是 bundle 利用需要特定版本的库。例如,Symfony2 不直接依赖任何版本的 Doctrine —— 但 DoctrineBundle 除外。确实如此。

在升级包/库之前,通常最好检查一下它们对 Packagist.org 所需的依赖项。 。搜索您要升级的包并查看它们定义了哪些必需的依赖项。 注意: Symfony 2.1 上不需要这样做,因为它将使用 Composer管理供应商库。

尽管如此,除非您亲自尝试,否则您永远不会知道某些东西是否适用于您的安装。当然,不要做任何愚蠢的事情 - 但没有理由害怕更新供应商库会破坏东西。将代码存储在 Git 中,您可以轻松恢复更改。请参阅:How to create and store a Symfony2 project in Git

<小时/>

此外,在 deps 中指定 version=#.#.# 时 - 即使您没有 deps.lock 文件所有,您将始终获得相同的提交哈希,因为您在存储库上指定了 Git 标记。

一些 bundle 不会提供版本号,而是提供各种分支来管理与多个 Symfony 版本的兼容性。因此,您可能会看到类似 version=origin/2.0 的内容,这意味着供应商脚本将 checkout 存储库中名为 2.0 的分支上的最新提交。维护者很可能会尝试保持该分支始终与 Symfony 2.0.x 兼容。

关于symfony - 手动更新 Symfony2 deps 文件以获取 Doctrine 2.2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9739350/

相关文章:

php - Symfony2/Doctrine 不会创建多对多关系

php - 分页 - 如何不允许用户进一步浏览现有页面?

php - PHP MYSQL 表的分页

php - 关联指的是不存在的反面字段。 | Symfony2/Doctrine2

symfony - 在 Doctrine2 查询中使用 Limit 和 Offset

database - 从一个实体到来自不同表的许多实体的symfony关系

php - 学说最佳关系 3 个表与 1 个文件表 - 实践/性能

ajax - 创建 'Ajaxified' 表单字段类型

symfony - 如何在 symfony 中监听控制台事件?

angular - ion-slides 分页项目符号与幻灯片内容重叠 [Ionic 4]