不允许重新推送 gem,但在尝试猛拉时未找到 gem

Repushing of gem not allowed, but gem not found when trying to yank

我目前正在尝试将 gem 发布到 rubygems.org,但遇到了一些困难。我在我的系统上构建了 gem,但是当我将它推送到 rubygems 时,我收到此错误:

// ♥ gem push upcoming-0.2.0.gem
Pushing gem to https://rubygems.org...
Repushing of gem versions is not allowed.
Please use `gem yank` to remove bad gem releases.

当我去 yank 版本时,我收到这个:

// ♥ gem yank upcoming-0.2.0.gem -v 0.2.0
Yanking gem from https://rubygems.org...
This gem could not be found

这是 gem 构建的终端输出:

// ♥ gem build upcoming.gemspec
WARNING:  open-ended dependency on nokogiri (>= 0) is not recommended
  if nokogiri is semantically versioned, use:
    add_runtime_dependency 'nokogiri', '~> 0'
WARNING:  open-ended dependency on pry (>= 0, development) is not recommended
  if pry is semantically versioned, use:
    add_development_dependency 'pry', '~> 0'
WARNING:  See http://guides.rubygems.org/specification-reference/ for help
  Successfully built RubyGem
  Name: upcoming
  Version: 0.2.0
  File: upcoming-0.2.0.gem

有谁知道我哪里出错了或者如何绕过这个问题来发布gem?

更新:我认为问题是 gem 的名字已经在 rubygems 上使用了。

// ♥ gem yank upcoming -v 0.2.0
Yanking gem from https://rubygems.org...
You do not have permission to delete this gem.

有人知道重命名 gem 的最快方法吗?我的所有文件及其内容都包含“即将到来”这个词,这是它的原始名称。有没有一种简单的方法可以重命名它而无需重命名所有这些文件并更改其内容?我尝试将 gemspec 文件重命名为 comcoming-denver-concerts.gemspec 并收到此错误:

// ♥ gem build upcoming-denver-concerts.gemspec
WARNING:  See http://guides.rubygems.org/specification-reference/ for help
ERROR:  While executing gem ... (Gem::InvalidSpecificationException)
    ["upcoming.gemspec"] are not files

当您已经将 gem (0.2.0) 的当前版本推送到 Rubygem 时,会出现第一条消息 (This gem could not be found)。你不能推两次。

第二条消息,我认为是由于滥用 Rubygems CLI。帮助文件指出 Usage: gem yank GEM -v VERSION。我认为如果您将命令更改为以下内容:

$ gem yank upcoming -v 0.2.0

你的yank会成功。

构建中的消息只是警告——值得修复,但不会阻止构建成功。

我能够重命名 gemspec 文件,git add . 和 gem push(新 gemspec 文件名)并且 gem 成功注册.谢谢大家!