Để có một khởi đầu tốt, bạn có thể sử dụng bundle gem
lệnh và rspec --init
.
~/code $ bundle gem my_lib
create my_lib/Gemfile
create my_lib/Rakefile
create my_lib/LICENSE.txt
create my_lib/README.md
create my_lib/.gitignore
create my_lib/my_lib.gemspec
create my_lib/lib/my_lib.rb
create my_lib/lib/my_lib/version.rb
Initializating git repo in /Users/john/code/my_lib
~/code $ cd my_lib/
~/code/my_lib $ git commit -m "Empty project"
~/code/my_lib $ rspec --init
The --configure option no longer needs any arguments, so true was ignored.
create spec/spec_helper.rb
create .rspec
- mã đi vào
lib
- thông số kỹ thuật đi vào
spec
- dữ liệu kiểm tra hoặc tài liệu đi vào
spec/fixtures/
- Yêu cầu tất cả các tệp ruby của bạn trong
lib/my_lib.rb
. Bạn cũng có thể xác định các ngoại lệ của mình trong tệp đó hoặc trong tệp riêng của chúng - theo sở thích của riêng bạn.
- Tệp nguồn C đi vào
ext/my_lib
- shell script và các tệp thực thi đi vào
bin
Khi nghi ngờ, chỉ cần nhìn vào cách các viên đá quý khác được bố trí.
Thêm thông tin:
Bạn nên thêm rspec làm phụ thuộc phát triển trong gemspec của mình để giúp mọi thứ dễ dàng hơn cho các nhà phát triển khác
- Chỉnh sửa my_lib.gemspec, thêm
gem.add_development_dependency 'rspec'
và gem.add_development_dependency 'rake'
gần cuối.
- Thêm
Bundler.setup
và require 'my_lib'
vào đầu spec / spec_helper.rb để đảm bảo các phụ thuộc đá quý của bạn được tải khi bạn chạy thông số kỹ thuật của mình.
- Thêm
require "rspec/core/rake_task"
và task :default => :spec
vào Rakefile của bạn, để chạy rake
sẽ chạy các thông số kỹ thuật của bạn.
Trong khi bạn đang làm việc trên bản sáng tạo mới nhất của mình, Guard-rspec có thể giúp bạn tiết kiệm thời gian và không gặp rắc rối bằng cách tự động chạy các thông số kỹ thuật của bạn khi các tệp thay đổi, cảnh báo bạn về các lỗi thông số kỹ thuật.
~/code/my_lib $ git add spec/spec_helper.rb
~/code/my_lib $ git commit -am "Add RSpec"
~/code/my_lib $ vim my_lib.gemspec # add guard development dependency
~/code/my_lib $ bundle
~/code/my_lib $ bundle exec guard init
~/code/my_lib $ vim Guardfile # Remove the sections below the top one
~/code/my_lib $ git add Guardfile
~/code/my_lib $ git commit -am "Add Guard"
Sau khi bạn hài lòng với sáng tạo của mình, hãy đẩy nó lên github
# create a github repository for your gem, then push it up
~/code/my_lib $ curl -u myusername https://api.github.com/user/repos -d '{"name":"my_lib"}'
~/code/my_lib $ git remote add origin git@github.com:myusername/my_lib.git
~/code/my_lib $ git push
Sau đó, khi bạn đã sẵn sàng phát hành gem của mình trên Rubygems.org, hãy chạy rake release
, phần này sẽ hướng dẫn bạn qua các bước.
~/code/my_lib $ rake release
Tham khảo thêm