existenznl / permcheck
PermCheck 是一个用于验证 PHP 项目中文件可执行位的工具
Requires
- symfony/console: ^4.4|^5.4|^6.0
- symfony/dependency-injection: ^4.4|^5.4|^6.0
Requires (Dev)
- mockery/mockery: ^1.5.1
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.7.1
This package is auto-updated.
Last update: 2024-09-21 10:38:58 UTC
README
关于
PermCheck 是一个小工具,用于检查项目中的文件是否设置了正确可执行位。它适用于 PHP 5.6 及以上版本(1.0 版本支持 PHP 5.3),依赖性非常低,因此您几乎可以将它添加到任何项目中。
PermCheck 的目标是防止不一致的可执行位和随机可执行文件,从而使项目更加一致和更加安全。
安装
可以通过运行以下命令将 PermCheck 添加为 composer 包:
composer require --dev existenznl/permcheck
配置
PermCheck 使用包含目录和可执行文件部分的 XML 配置文件。
目录部分应包含所有要检查的项目目录,而可执行文件部分应包含所有应可执行文件。所有找到但不在可执行文件部分中的文件都被认为是预期不可执行。
示例
<permcheck> <excludes> <dir>.git</dir> <dir>vendor/</dir> <file>dontcare.sh</file> </excludes> <executables> <file>cli/console</file> </executables> </permcheck>
在上面的示例配置中,除了 .git 和 vendor 目录以及 dontcare.sh 文件之外,所有内容都会被验证,而只有文件 cli/console 必须可执行。
如果不满足条件,PermCheck 将会报错。
如果其他文件可执行,PermCheck 也会报错。
使用方法
在代码库中存储配置 XML 后,我们现在可以开始使用 PermCheck。
执行 permcheck 通过运行带有所需/所需标志和选项的命令很简单。
vendor/bin/permcheck <--config|-c=...> [--directory|-d=...]
PermCheck 使用了 Symfony 2 的 控制台组件,因此标志和选项可以按照 SF2 控制台组件文档中概述的各种格式指定。
以下选项和标志可用
错误、问题和改进
如果您发现了一个错误或有任何问题,请打开 GitHub 问题跟踪器上的问题。可以通过针对 develop 分支的拉取请求发送改进,并将非常感谢!