Cheat Sheet速查表
跳转到主要内容

Packs(Ruby) 速查表

本文根据 Devhints / Packs (ruby) 翻译。代码示例及版本范围沿用原文。原文标注更新日期:2024-07-05。

Packs 是一种可扩展打包系统的规范,旨在帮助实现 Ruby 的模块化应用程序。

管理包

创建包

$ bin/packs create packs/pack_name

示例

$ bin/packs create packs/profiles

创建名为……的新包 profiles.

将文件或目录设为公开

$ bin/packs make_public path/to/file.rb
$ bin/packs make_public path/to/directory

将文件或目录 API 设为公开,即允许包外的类调用此逻辑。

示例

$ bin/packs make_public packs/profiles/app/services/create_profile_service.rb

允许外部代码调用该类 CreateProfileService.

此命令主要用于将该文件移动到…… packs/profiles/app/public/create_profile_service.rb

移动包

$ bin/packs move packs/destination_pack path/to/file.rb
$ bin/packs move packs/destination_pack path/to/directory

将文件或目录从一个包移动到另一个包。

$ bin/packs move_to_folder packs/foo path/to/directory

移动 packs/foo 为 path/to/directory 文件夹,其中…… path/to/directory 不包含…… package.yml 文件。

$ bin/packs move_to_parent packs/child_pack packs/parent_pack

设置 packs/child_pack 作为……的子项 packs/parent_pack.

向包添加依赖项

$ bin/packs add_dependency packs/from_pack packs/to_pack

包的有效性

所有包是否有效?

$ bin/packs validate

运行 bin/packwerk validate (在后台执行,检测循环依赖)。

特定包是否有效?

$ bin/packs check packs/pack_name

运行 bin/packwerk check (在后台执行)。

更新 package.yml

$ bin/packs update

运行 bin/packwerk update-todo (在后台执行)。

代码检查 (Lint)

$ bin/packs lint_package_todo_yml_files

代码检查 package_todo.yml 检查文件是否存在格式问题。

$ bin/packs lint_package_yml_files [ packs/my_pack packs/my_other_pack ]

代码检查 package.yml 文件。

$ bin/packs list_top_violations type [ packs/your_pack ]

列出特定类型的 top 违规项,针对…… packs/your_pack.

另请参阅

  • 文档 (packs GitHub 仓库)