Ruby: Làm thế nào để viết một viên đá quý? [đóng cửa]


160

Tôi muốn viết một gói cho Ruby và làm cho nó có sẵn như một viên ngọc.
Các công cụ, các bước và cạm bẫy là gì?
Có bất kỳ hướng dẫn tốt, screencasts, vv, đã giúp bạn học cách làm điều đó?

Câu trả lời:


216

Hướng dẫn của Rubygems.org là một trong những tài nguyên tốt nhất để viết đá quý của riêng bạn.

Nếu bạn đang sử dụng Bundler trong ứng dụng của mình, bạn có thể muốn xem hướng dẫn của Ryan Bigg về Phát triển RubyGem bằng BundlerRailscast về việc tạo đá quý với Bundler .

Nếu bạn quan tâm đến các công cụ giúp bạn viết đá quý:

Một số hướng dẫn / hướng dẫn:


3
gem buildđược cung cấp bởi chính RubyGems. Tất cả các viên ngọc Gemcutter (và sắp tới, RubyGems thích hợp) cho phép bạn làm là đẩy một RubyGem bằng API. gemcutter.org/pages/gem_docs gemcutter.org/pages/api_docs
qrush

Cảm ơn, tôi đã chỉnh sửa phản hồi.
Jack Chu

6

Đây là cách tôi thường tạo và phát hành Đá quý:

  1. Đăng ký https://github.com
  2. Đăng ký https://rubygems.org
  3. $ gem install ore rubygems-tasks rdoc rspec
  4. $ mine awesome_gem
  5. cd awesome_gem/và chỉnh sửa README.rdocawesome_gem.gemspec, viết mã vào lib/awesome_gem/và thêm các bài kiểm tra RSpec vào specs/.
  6. khi bạn sẵn sàng phát hành, cập nhật ChangeLog.rdoctệp, chạy rake specrake rerdoc, mở html/index.htmlvà kiểm tra lại xem có lỗi chính tả nào không.
  7. rake release
  8. (Tùy chọn) gửi liên kết và giải thích về viên ngọc tuyệt vời mới của bạn tới http://rubyflow.com

Ngồi lại và đắm mình trong vinh quang của Gem đầu tiên của bạn. :)


6

Bạn không cần phải bắt đầu viết một viên ngọc, chỉ cần viết một số mã, viết một số bài kiểm tra, sử dụng nó theo cách bạn muốn và một khi bạn hài lòng với nó, hãy sử dụng đá quý này để tạo Rakefile có liên quan.

Nó giúp nếu bạn tuân theo các cách tiếp cận mà các loại đá quý khác sử dụng (có thư mục lib, tránh đặt tên tệp theo cách có thể xung đột với các loại đá quý khác, viết một số thử nghiệm nếu bạn có thể, có một readme), nhưng không cần thiết.

Một khi bạn có một cái gì đó bạn muốn chia sẻ, hãy đặt nó trên github và đẩy nó vào gemcutter .

Đừng nghĩ quá nhiều, đừng sử dụng cuốc hay các công cụ quá mức khác, hãy vui vẻ, đừng làm bất cứ điều gì tôi sẽ không làm.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.