如何在更新前创建 composer/bower 个供应商软件包的备份?
How can I create a backup of composer/bower vendor packages before updating?
我需要更新一个过时的 Symfony 2.8 项目,该项目使用 composer 和 bower 作为包管理器。
问题是网站可能不会宕机,但是因为项目已经过时了,我担心composer或者bower在更新过程中会失败,导致网站宕机。
我知道我可以 运行 在干燥 运行 模式下作曲,我会在实际更新之前这样做:
composer update --dry-run
composer install --dry-run
但我想绝对确定我可以在出现问题时恢复供应商包。所以我想我可以简单地做一个备份 tar:
cd /home/project/public_html/
tar cvf /home/project/composer_bower`date +'%Y%m%d'`.tar composer.json composer.lock bower.json .bowerrc vendor/ web/assets/vendor/
这是我备份供应商包的方式吗? Composer 似乎没有内置的可能性来恢复 update/install。还有其他选择吗?
这不是作曲家的工作。
版本控制 composer.*
文件(以及任何其他依赖声明文件,例如 symfony.lock
如果您在 Symfony 下工作,则由您决定。
甚至为了更安全,从依赖声明 + 检索到的依赖(例如代码 + vendor
目录)创建完整工件的副本。
在我们的一些需要这种敏感性的项目中,每个部署都是一个完全包含和版本控制的图像。如果部署出现问题,我们可以随时返回旧映像。
对于不太重要的项目,只需将依赖声明文件放在版本控制上就足够了。
我需要更新一个过时的 Symfony 2.8 项目,该项目使用 composer 和 bower 作为包管理器。
问题是网站可能不会宕机,但是因为项目已经过时了,我担心composer或者bower在更新过程中会失败,导致网站宕机。
我知道我可以 运行 在干燥 运行 模式下作曲,我会在实际更新之前这样做:
composer update --dry-run
composer install --dry-run
但我想绝对确定我可以在出现问题时恢复供应商包。所以我想我可以简单地做一个备份 tar:
cd /home/project/public_html/
tar cvf /home/project/composer_bower`date +'%Y%m%d'`.tar composer.json composer.lock bower.json .bowerrc vendor/ web/assets/vendor/
这是我备份供应商包的方式吗? Composer 似乎没有内置的可能性来恢复 update/install。还有其他选择吗?
这不是作曲家的工作。
版本控制 composer.*
文件(以及任何其他依赖声明文件,例如 symfony.lock
如果您在 Symfony 下工作,则由您决定。
甚至为了更安全,从依赖声明 + 检索到的依赖(例如代码 + vendor
目录)创建完整工件的副本。
在我们的一些需要这种敏感性的项目中,每个部署都是一个完全包含和版本控制的图像。如果部署出现问题,我们可以随时返回旧映像。
对于不太重要的项目,只需将依赖声明文件放在版本控制上就足够了。