2012-02-15 98 views
4

我想能够运行命令:有没有办法锁定PHPUnit版本?

pear update 

无需升级PHPUnit的,但一切是免费得到升级(只要它不会破坏PHPUnit的依赖性需求)。

所以基本上,有没有办法来锁定一个包的版本?

谢谢!

+0

我相信你有一个很好的理由,但仍然:仔细阐述为什么?你有更新版本的PHPUnit的兼容性问题吗? – 2012-02-15 17:00:39

+0

是的。 Zend Framework v1与大于3.4的PHPUnit不兼容。我认为它会得到3.5,但有大量的折旧信息。 – postalservice14 2012-02-15 17:09:53

+2

也许更新pear,然后在升级时安装想要的PHPUnit版本? – 2012-02-15 17:23:24

回答

1

您可以尝试编写一个简单的shell脚本,它将为phpunit频道执行pear channel-delete,然后更新并添加频道。

+0

有趣的想法....我会试试看。谢谢。 – postalservice14 2012-03-07 00:12:38

0

我也在维护一堆ZF1应用程序,我也必须为我们的测试处理PHPUnit版本3.4.15,但我们采取了另一种方法:我们通过pear卸载PHPUnit并从PHPUnit的git下载源代码repo,接下来我们构建phar包,然后将它作为可执行文件链接到/ usr/bin目录中。

我将PHPunit-3.4.15并行运行到PEAR安装的PHPUnit中,但如果您不需要更高版本,则可以一起删除PEAR包。

$ sudo pear uninstall phpunit/PHPUnit 

如果您还使用phing,则需要强制安装ping以忽略对PHPUnit的依赖关系。

旧的PHPUnit作为药业包装的方法如下:

$ cd /tmp 
$ curl -o phpunit-3.4.15.tar.gz https://codeload.github.com/sebastianbergmann/phpunit/tar.gz/3.4.15 
$ tar -xvzf phpunit-3.4.15.tar.gz 
$ cd phpunit-3.4.15/ 
$ /usr/bin/php make_phar.php 
$ sudo ln -s /tmp/phpunit-3.4.15/phpunit.phar /usr/bin/phpunit34 

PHP设置 由于我们欺骗系统一点,我们需要一些事情添加到我们的php.ini配置。

  • 在php.ini:phar.readonly =关
  • 在php.ini:的include_path =”:/路径/到/梨:/tmp/phpunit-3.4.15"
相关问题