如何使用 Composer 的 self-update –rollback 回滚 Composer 自身的版本?

2次阅读

composer 的 self-update –rollback 命令用于回滚到上一个已安装版本,依赖本地 composer.phar.backup 备份文件,仅 PHAR 安装方式支持,失败时可手动替换备份文件并验证版本。

如何使用 Composer 的 self-update –rollback 回滚 Composer 自身的版本?

Composer 的 self-update --rollback 命令用于将 Composer 自身回滚到上一个已安装的版本,适用于更新后出现兼容性问题、命令异常或插件失效等情况。它不依赖远程版本列表,而是依靠本地备份机制——Composer 在每次成功更新时,会自动保存前一个版本的可执行文件(通常为 composer.phar.backup)。

确认 rollback 是否可用

并非所有安装方式都支持 rollback:

  • 通过 curl -sS https://getcomposer.org/installer | php 或官方脚本安装的 PHAR 版本,支持 rollback;
  • 通过系统包管理器(如 apt、brew、choco)安装的 Composer,不支持该命令,因为它们不维护备份文件;
  • 全局安装的 Composer(如 sudo composer self-update)若未报错,一般可 rollback;运行 composer --version 可查看当前版本,再执行下一条命令验证备份是否存在。

执行回滚操作

在终端中直接运行:

composer self-update --rollback

如果成功,会输出类似:

如何使用 Composer 的 self-update –rollback 回滚 Composer 自身的版本?

LALAL.AI

AI人声去除器和声乐提取工具

如何使用 Composer 的 self-update –rollback 回滚 Composer 自身的版本? 196

查看详情 如何使用 Composer 的 self-update –rollback 回滚 Composer 自身的版本?

Rolling back to version 2.5.8 (2023-06-15)

若失败,常见提示及原因:

  • No backup found, cannot rollback:说明此前未成功更新过,或备份文件被手动删除;
  • Permission denied:当前用户无权修改 composer.phar 所在目录(如 /usr/local/bin),需加 sudolinux/macOS)或以管理员身份运行终端(windows);
  • 回滚后仍异常?可尝试 composer clear-cache 清理缓存,避免旧版本残留数据干扰。

手动恢复(当 –rollback 失效时)

若自动 rollback 不可用,可尝试手动还原:

  • 查找备份文件:通常与 composer.phar 同目录,名为 composer.phar.backup
  • 替换主文件(谨慎操作,建议先备份当前文件):
    mv composer.phar composer.phar.current && mv composer.phar.backup composer.phar
  • 赋予可执行权限(如需要):
    chmod +x composer.phar
  • 验证:composer --version 应显示原版本号。

基本上就这些。rollback 是 Composer 内置的安全兜底机制,但只管“上一版”,不能跳转到任意历史版本。如需指定版本,得用 composer self-update 2.4.4 这类明确指令。

以上就是如何使用 Composer 的 self-update –rollback 回滚 Composer 自身的版本?的详细内容,更多请关注php中文网其它相关文章!

text=ZqhQzanResources