tomkyle / tuplo
适用于 CLI 和/或 Typora 的可配置上传脚本
Requires
- php: ^8.1
- league/flysystem: ^3.0
- league/flysystem-ftp: ^3.0
- league/flysystem-memory: ^3.0
- league/flysystem-path-prefixing: ^3.3
- league/flysystem-sftp-v3: ^3.0
- mnapoli/silly: ^1.8
- mnapoli/silly-php-di: ^1.2
- php-di/php-di: ^6.0
- symfony/yaml: ^6.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.0|^3.0
- php-coveralls/php-coveralls: ^2.0
- phpspec/prophecy: ^1.15
- phpstan/phpstan: ^1.0
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2024-09-12 09:13:37 UTC
README
tuplo 是一个 CLI 上传工具。它可以与 YAML 文件进行配置。目前支持以下上传方法:
- FTP
- 带用户名/密码的 SFTP
- 带 SSH 密钥的 SFTP
安装
使用 Composer
安装 tuplo 为全局命令
$ composer global require tomkyle/tuplo
请确保 Composer 的全局命令在 $PATH
中可用
# Unix, Linux, et al. export PATH="/home/username/.config/composer/vendor/bin:${PATH}" # MacOS export PATH="/Users/you/.composer/vendor/bin:${PATH}"
Linux, Unix 等
获取仓库内容并安装依赖项。你可能想将它链接到你的 ~/bin
目录
$ git clone git@github.com:tomkyle/tuplo.git $ cd tuplo # Symlink if needed $ ln -s "${PWD}/bin/tuplo" ~/bin/tuplo
MacOS
待完成,我正在努力
配置
上传配置可以存储在 .tuplo.yaml
文件中,位于 $HOME
目录或当前工作目录;后者优先于前者。请参阅 tuplo.dist.yaml 中的示例——这里是一个普通 FTP 上传的示例。在这个例子中,“typora”是一个上传配置的名称,它用作 CLI 参数。
typora: description : Just a plain FTP example method : ftp downloadUrl : "https://test.com/typora" host : 'ftp.test.com' port : 21 ssl : false root : 'path/to/typora' username : 'ftp-username' password : 'ftp-password'
用法
根据上述配置示例,CLI 用法如下。
$ tuplo typora <file> [file] ...
开发和测试
此仓库包含 自定义 Git 钩,用于在 git pull 后更改 composer.lock 时自动执行 composer installs。更多信息请参阅 此处。
错误和问题
欢迎任何提示和建议!在 GitHub 的 问题跟踪器 上打开一个票据。
单元测试
默认配置是 phpunit.xml.dist. 如果你喜欢,可以创建自定义的 phpunit.xml 来应用自己的设置。也请访问 phpunit.readthedocs.io · Packagist
$ composer phpunit
# ... or
$ vendor/bin/phpunit
PhpStan
默认配置是 phpstan.neon.dist. 如果你喜欢,可以创建自定义的 phpstan.neon 来应用自己的设置。也请访问 phpstan.org · GitHub · Packagist
$ composer phpstan
# ... which includes
$ vendor/bin/phpstan analyse
PhpCS
默认配置是 .php-cs-fixer.dist.php. 如果你喜欢,可以创建自定义的 .php-cs-fixer.php 来应用自己的设置。也请访问 cs.symfony.com · GitHub · Packagist
$ composer phpcs
# ... which aliases
$ vendor/bin/php-cs-fixer fix --verbose --diff --dry-run
应用所有 CS 修复
$ composer phpcs:apply
# ... which aliases
$ vendor/bin/php-cs-fixer fix --verbose --diff