您只需使用新名称推送新 gem 并告诉您的用户新名称。没有重命名宝石的机制。-- RubyGems 支持人员,2012 年 2 月 20 日
为此,以下是一些技巧(其中一些我看到你已经完成了)。
在旧宝石中,抛出弃用警告
例子:
warn "[DEPRECATION] This gem has been renamed to _____ and will no longer be supported. Please switch to _____ as soon as possible."
在旧宝石的.gemspec
文件中
安装旧 gem 后使用post_install_message属性显示一条消息。以下示例基于Heroku gem。
gem.post_install_message = <<-MESSAGE
! The '_____' gem has been deprecated and has been replaced by '_____'.
! See: https://rubygems.org/gems/_____
! And: https://github.com/_____/_____
MESSAGE
在旧的 GitHub 存储库页面上
-1- 在页面顶部:向此存储库添加描述:(提供新名称)
Moved to ---> "_____".
-2- 在页面顶部:将网站添加到此存储库:(将此作为新存储库的 URL)
https://github.com/_____/_____
-3- 上传新的README.markdown
:
# OLD NAME
Moved to [new name](https://github.com/_____/_____).
-4- 考虑删除所有非必要文件。
在新 gem 的.gemspec
文件中
summary
在ordescription
属性的末尾包含以下通知:
Formerly known as '_____'.
拉出旧宝石
在某个遥远的地方,您可能想要从 RubyGems 中删除旧的 gem。从 RubyGems1.3.6
和 gemcutter 0.5.0
(大约 2010 年 2 月)开始,您可以使用gem install 和其他 gem 命令gem yank
来删除您的 gem。但是,gem 仍然可以下载,主要原因有两个:
- 可能已推送其他宝石,具体取决于您的宝石。
- 可以轻松防止大量删除基于社区的重要 gem。
转到此处以获取有关 yank 的更多信息。