我试图将我的第一颗宝石发布给Ruby Gems。宝石在当地运作良好。
我使用以下方式发布它:
$rake release
这在控制台中给了我这个:
example_gem 0.0.3 built to pkg/example_gem-0.0.1.gem
Tagged v0.0.1
Pushed git commits and tags
然后该过程挂起。我等了20分钟,然后取消了。
当我试图再次释放时,我得到了:
rake aborted!
This tag has already been committed to the repo.
所以我认为宝石已成功提交,但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
出了什么问题?
答案 0 :(得分:5)
为了Google搜索和存档:我遇到了同样的问题,但原因不同。当我使用推荐的命令下载我的RubyGems凭证文件时:
curl -u pond https://rubygems.org/api/v1/api_key.yaml > ~/.gem/credentials; chmod 0600 ~/.gem/credentials
...我必须输入错误的密码,因为该文件实际上包含文字“HTTP Basic: Access denied.
”。没有错误输出到控制台。重复curl
命令并对密码输入更加小心,会生成一个合理的credentials
文件,并且下一次运行rake release
的尝试会有效。
如果您对现有标签抱怨,您可能只需要在本地删除它;使用方法:
git tag
...看看有什么,一旦你确定了基于版本的标签(例如“v2.0.0”),请将其删除:
git tag -d <tag_name>
答案 1 :(得分:0)
归咎于版本并再次尝试。这次它奏效了。我改变的只是从git中删除Gemfile.lock。