Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
some lightweight utilities to assist in managing a rubygem
Ruby
tree: 7d8e434b3b

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
lib/gemesis
.gitignore
MIT-LICENSE
README.rdoc
Rakefile
gemspec

README.rdoc

gemesis

This is a gem that provides some simple rake tasks for managing a rubygem.

creating a gem

create a gem specification file called gemspec

For example:

Gem::Specification.new do |s|
  s.name = 'gemesis'
  s.version = '0.0.4'
  s.summary = 'some lightweight utilities to assist in managing a rubygem'
  s.authors << 'Mark Ryall'
  s.email = 'mark@ryall.name'
  s.homepage = %q{http://github.com/markryall/gemesis}
  s.files = Dir['bin/*'] + Dir['lib/**/*'] + ['README.rdoc', 'MIT-LICENSE']
  s.executables << 'collect_gems'
end

Make sure the version line is formatted as indicated - the major, minor and patch tasks will not work otherwise.

initialise a git or mercurial repository

hg/git init

create Rakefile

require 'gemesis/rake'

usage

This will add the following rake tasks in a gem namespace:

  • release - push, then increments version in gemspec

  • push - builds the gem, pushes to rubyforge and

  • build - builds the gem file

  • install - installs the gem file

  • uninstall - uninstalls the gem

  • reinstall - uninstalls and installs the gem

  • major - increments the major version number

  • minor - increments the minor version number

  • patch - increments the patch number

To run gem installation or uninstallation with sudo - set an environment variable SUDO to sudo

Note that push will create a repository tag so it is recommended you increment the gem version and commit all changes prior to executing a push.

Refer to semver.org/ for some sensible tips on versioning.

collect_gems

If you checkout any gem that uses gemesis (or has a gem specification file caled gemspec), you can use the collect_gems executable to install all necessary runtime and development depencies.

collect_gems was completely stolen from github.com/mdub/gem_collector

Something went wrong with that request. Please try again.