有没有办法锁定PHPUnit版本?

时间:2012-02-15 16:58:26

标签: php phpunit pear

我希望能够运行命令:

pear update

没有升级PHPUnit,但其他所有内容都可以自由升级(只要它不会破坏PHPUnit依赖性要求)。

基本上,有没有办法锁定单个软件包的版本?

谢谢!

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分: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作为phar包的方法如下:

$ 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 = Off
  • 在php.ini中:include_path =“。:/ path / to / pear:/tmp/phpunit-3.4.15”