phputil / restage
仅将修改的文件添加到暂存区
v0.4.1
2024-06-07 23:18 UTC
Requires
- php: >=7.0
README
✅ 仅将修改的文件添加到暂存区
使用场景:您正在使用 Git,并且文件已经准备好提交。但是当您运行 git commit
时,您的 pre-commit
Git 钩运行了一个格式化工具,它再次更改了您的文件。现在您必须再次运行 git add
,但只为已更改的文件,因为您还不想添加未跟踪的文件。我知道这很无聊。幸运的是,现在您可以使用 restage
来实现这一点。
👉 restage
仅将修改的文件添加到暂存区。
注意:还有一些类似的 JavaScript 工具,例如 lint-staged,可以用于此目的。restage
旨在针对不需要使用 JavaScript 的项目。
安装
仅需要 PHP 7.0+ 和 Git
composer require phputil/restage --dev
用法
php vendor/bin/restage
您可能希望将上述命令包含到您的 Git 钩中(例如 pre-commit
),在执行格式化源代码的命令之后执行。例如,php vendor/bin/php-cs-fixer && php vendor/bin/restage
。
CLI 选项
--help This help. --all, -a List untracked files and modified staged files. --dry-run, -d Simulate the command without actually doing anything. --modified, -m List modified staged files. --verbose, -v Enable verbose mode.
👉 如果您想在修改的文件中运行一个检查器/格式化工具,可以使用 --modified
获取它们。
有用的工具
- Captain Hook 可以管理您的 Git 钩。
- PHP-CS-Fixer 可以格式化您的源代码。
- PHP Code Sniffer 是 PHP-CS-Fixer 的替代品。