serethix / composer-command-log
按执行顺序记录所有已执行的命令,以便在合并或变基过程中出现合并冲突时重新运行
v1.0.4
2019-06-07 18:36 UTC
Requires
- php: >=7.1
- composer-plugin-api: ^1.1
- ext-json: *
- symfony/console: ^4.1
- symfony/lock: ^4.1
- symfony/process: ^4.1
Requires (Dev)
- composer/composer: ^1.7
This package is auto-updated.
Last update: 2024-09-08 07:14:39 UTC
README
你在处理 composer.json / composer.lock 中的大量合并冲突时也感到压力吗?
试试这个 composer 插件!它会在项目文件中跟踪你在项目上执行的所有 composer 命令,所以当与其他分支发生冲突时:接受他们的或更好的是:检出他们的版本,然后在上面重新执行你的更改!
安装
composer require serethix/composer-command-log
或如果你想全局运行它,运行 composer global require serethix/composer-command-log
如果你遇到此插件的错误,你可以使用 --no-plugins
选项运行每个命令以临时禁用所有已安装的插件。
配置
此插件可以全局配置或按项目配置。
目前你可以指定以下选项
{ "require": { "serethix/composer-command-log": "^1.0" }, "config": { "command-logfile": "composer-command.log", "command-to-log": [ "require", "remove", "update", "upgrade", "run-script", "exec", "dumpautoload", "dump-autoload", "config" ] } }
command-logfile
指定相对于你的项目目录的名称和路径。
通过修改 command-to-log
配置,你可以将其他命令添加到要记录的命令列表中,因此可以在稍后重新播放。
这些也是默认值,你只需在需要更改它们时提供。
贡献
欢迎新的功能、错误修复和建议的拉取请求。
在创建新功能之前,请查看已经计划的功能和进行中的功能。
计划中的功能
- 利用与命令信息一起保存的
tag
属性- 标签的包含/排除过滤器
- 基于时间的过滤器
- 在执行每个命令之前请求确认(如
git add -p
模式)- 全部接受
- 是
- 否
- 稍后
- 在处理期间锁定日志文件。
进行中的功能
项目刚刚开始,你在想什么?^^
许可
感谢
Rafael Dohms 的 博客文章 启发了这个 composer 插件的创建。