一个PHP命令行工具,可以轻松地从GitHub下载依赖项。

v0.1.1 2022-10-28 16:32 UTC

This package is auto-updated.

Last update: 2024-08-30 01:12:04 UTC


README

packagist package version packagist package downloads license

一个PHP命令行工具,可以轻松地从GitHub下载依赖项。

用例

在构建PHP网站时,下载和安装前端框架的两个主要选项是使用NPM/Yarn/Bower(需要Node),或者手动将框架的源代码包含到项目中(并将该代码提交到您的仓库)。这个工具的目标是消除对Node的需求,以及将框架的代码提交到项目仓库的需要。

安装

到包(本地)

composer require-dev itsahappymedium/gpm
./vendor/bin/gpm help

到您的系统(全局)

composer global require itsahappymedium/gpm
gpm help

用法

GPM将从类似这样的gpm.json文件中读取依赖项列表

{
  "dependencies": {
    "cowboy/jquery-throttle-debounce": "1.1",
    "derek-watson/jsuri": "1.3.1",
    "kazzkiq/balloon.css": "1.0.0",
    "kraaden/autocomplete": "#c43f2a7",
    "leongersen/nouislider": "14.7.0",
    "patrickkunka/easydropdown": "4.2.0",
    "zenorocha/clipboard.js": "2.0.8"
  }
}

包名称是<github_username>/<repo_name>。所以如果您想安装https://github.com/kraaden/autocomplete,包名称将是kraaden/autocomplete

包版本可以是标签名称、dev-<branch>#<commit_sha>,或者一个URL(将解压zip文件)。如果找不到使用指定的版本/标签指定的包版本,它将再次尝试使用前面添加了v的版本(例如,如果1.3.1不存在,它也将尝试v1.3.1)。

gpm install [--save/-s] [--path/-p <path>] [--install-path/-i <path>] [package]

如果传递了package参数,它将简单地下载并解压该包(如果设置了--save-s选项,还将保存到gpm.json),否则如果没有传递参数,将下载并解压当前在gpm.json中定义的所有包。

设置--path-p选项来定义gpm.json文件所在的路径(默认为当前目录)。

设置--install-path-i选项来定义下载和解压包的路径(默认为当前目录中的gpm_modules)。

设置--ignore-errors-c选项来忽略发生的任何错误,并继续安装其余的包。

设置--ext-e选项来定义从存档中提取的文件扩展名,否则将提取所有文件(用逗号分隔多个扩展名)。

gpm uninstall [--save/-s] [--path/-p <path>] [--install-path/-i <path>] <package>

gpm_modules目录(或设置--install-path-i选项的目录)中删除一个包(如果设置了--save-s选项,还将从gpm.json中删除)。

gpm versions <package>

列出传递给package参数的包的可用的版本。

gpm init [--path/-p <path>]

在当前目录(或设置--path-p选项的目录)中生成一个gpm.json文件。

gpm help

显示有关如何使用GPM的信息。

使用JSON定义设置

您可以通过在JSON文件中定义它们来设置install-path和/或ext选项

{
  "dependencies": {
    "kazzkiq/balloon.css": "1.0.0",
    "kraaden/autocomplete": "#c43f2a7"
  },
  "settings": {
    "gpm": {
      "ext": ["js", "css", "scss"],
      "install-path": "frontend_dependencies"
    }
  }
}

both install-path and ext settings accept a string or an array of strings. The install-path defined here is relative to the JSON file.

相关

  • FEC - 一个PHP命令行工具,可以轻松编译、连接和压缩前端JavaScript和CSS/SCSS依赖项。

许可证

麻省理工学院。更多信息请参阅license.md文件