释放宝石时耙子释放挂起

Und*_*ion 5 rake gem rubygems release ruby-on-rails

我正试图将我的第一颗宝石发布给Ruby Gems.宝石在当地运作良好.

我发布它使用:

$rake release
Run Code Online (Sandbox Code Playgroud)

这给了我在控制台中的这个:

example_gem 0.0.3 built to pkg/example_gem-0.0.1.gem 
Tagged v0.0.1
Pushed git commits and tags
Run Code Online (Sandbox Code Playgroud)

然后该过程挂起.我等了20分钟,然后取消了.

当我试图再次释放时,我得到了:

rake aborted!
This tag has already been committed to the repo.
Run Code Online (Sandbox Code Playgroud)

所以我认为宝石已成功提交,但是16小时后,宝石不在我的Ruby Gems帐户下.

所以我碰到了版本并再次尝试使用--trace,但是进程挂起在同一个地方,只有以下添加输出:

** Invoke release (first_time)
** Execute release
example_gem 0.0.3 built to pkg/example_gem-0.0.3.gem
Tagged v0.0.3
Pushed git commits and tags
Run Code Online (Sandbox Code Playgroud)

出了什么问题?

And*_*son 6

为了谷歌搜索和档案:我遇到了同样的问题,但原因不同.当我使用推荐的命令下载我的RubyGems凭证文件时:

curl -u pond https://rubygems.org/api/v1/api_key.yaml > ~/.gem/credentials; chmod 0600 ~/.gem/credentials
Run Code Online (Sandbox Code Playgroud)

...我必须输入错误的密码,因为文件实际上包含文本" HTTP Basic: Access denied.".没有错误输出到控制台.重复curl命令并对密码输入更加小心导致一个合理的credentials文件,并且下一次尝试运行rake release起作用.

如果您收到有关现有标签的投诉,您可能只需要在本地删除它; 使用:

git tag
Run Code Online (Sandbox Code Playgroud)

...看看有什么,一旦你确定了基于版本的标签(例如"v2.0.0"),请删除它:

git tag -d <tag_name>
Run Code Online (Sandbox Code Playgroud)


Und*_*ion 0

修改了版本,然后再试一次。这次成功了。我所做的唯一更改是从 git 中删除 Gemfile.lock。