Composer自动更新

时间:2014-07-18 02:21:01

标签: composer-php

通常每隔30天我会收到此警告信息:

Warning: This development build of composer is over 30 days old. It is recommended to update it by running "composer.phar self-update" to get the latest version.

然后,我必须每30天重复更新一次。无论如何我可以让作曲家自动更新吗?

谢谢。

6 个答案:

答案 0 :(得分:21)

在我的知识中,作曲家不会进行自我更新。对我来说,单独运行自我更新似乎也不是正确的方法。为什么不运行

composer self-update
  

如果登录的用户没有权限,请使用sudo composer self-update

它只是一个简单的在线命令,你只想在30天内完成一次。并将作曲家保持在全球范围内,这样您就不需要为每个项目运行。

答案 1 :(得分:6)

对于尚无法进行自我更新的composer版本,只需运行以下命令:

  1. which composer。就我而言,它返回/usr/bin/composer;
  2. php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"。这会将composer-setup.php文件下载到当前工作目录中;
  3. php composer-setup.php。这会将composer.phar文件创建到当前工作目录中;
  4. sudo mv composer.phar /usr/bin/composer。将/usr/bin/composer替换为步骤1返回的结果。

完成此步骤后,sudo composer self-update将变为可用。

答案 2 :(得分:1)

Composer仍处于开发阶段。已经发布了alpha版本,但第一次稳定版本仍然没有可预见的日期。

因此,运行composer self-update总是从Github存储库安装最新的提交。期待这些提交被打破!如果您可以使用自动更新来不断安装已损坏的Composer版本,只需创建一个每月运行一次或更频繁的cronjob。

如果您认为执行此操作的风险太大,请手动更新并检查一切是否仍然有效。

答案 3 :(得分:1)

将composer self update命令放在bash文件中,然后从cron作业执行。

此链接对如何使用cron:https://askubuntu.com/questions/2368/how-do-i-set-up-a-cron-job

进行了很好的讨论和解释

最基本的解释是将shell脚本放在此文件夹中:/etc/cron.monthly

答案 4 :(得分:0)

composer self-update --2

解决了我的问题。 (升级到 2.1.3)

答案 5 :(得分:-1)

尝试以下命令。

sudo composer self-update

它对我有用!