用途:指导创建、测试和发布 Ruby gem,适用于需要搭建 gem 脚手架、编写 gemspec、管理版本、生成文档或发布到 RubyGems 的场景。
主要能力:
- 创建脚手架:bundle gem my_gem,可加 --test=minitest --ci=github --linter=rubocop;也给出手动目录结构(lib、test、Gemfile、Rakefile、gemspec、README、LICENSE、CHANGELOG)。
- gemspec 编写:name、version、authors、summary、description、homepage、license、required_ruby_version、metadata(含 rubygems_mfa_required)、files、bindir、executables、require_paths 及运行时依赖。
- 代码组织:version.rb、主入口 lib/my_gem.rb、Configuration 配置模式与自定义错误类。
- 测试:test_helper 与 Minitest 示例,可选 VCR/WebMock;Rakefile 集成 test 与 rubocop。
- 版本管理:语义化版本 MAJOR.MINOR.PATCH、预发布版本,以及 rake 版本递增任务。
- 文档:YARD 注释与 yard doc、yard server;README 模板。
- 发布:gem signin、bundle exec rake release、gem build、gem push、gem yank;GitHub Actions CI 与发布工作流。
使用方式:按资料中的命令与文件结构操作,例如 bundle gem my_gem、bundle exec rake test、bundle exec rake release、gem push my_gem-1.0.0.gem。
限制:资料未提供具体收费、价格、平台支持范围或实际效果说明;部分内容为示例代码,需按实际项目调整。