A Ruby library for quickly pulling down or updating any Repository.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
lib
spec
.gemtest
.gitignore
.rspec
.yardopts
ChangeLog.md
LICENSE.txt
README.md
Rakefile
gemspec.yml
pullr.gemspec

README.md

Pullr

Description

Pullr is a Ruby library for quickly pulling down or updating any Repository. Currently, Pullr supports Git, Mercurial (Hg), SubVersion (SVN) and Rsync. Pullr provides a command-line utility and an API which can be used by other frameworks.

Features

  • Currently supports pulling from:
    • Mercurial (Hg)
    • Git
    • SubVersion (SVN)
    • Rsync

Synopsis

Pull down a repository:

$ pullr git://github.com/evanphx/rubinius.git

Pull down a repository into a specific directory:

$ pullr git://github.com/datamapper/dm-rails.git /home/deploy/dm-rails

Pull down a repository from a generic HTTP URL:

$ pullr http://www.tortall.net/svn/yasm/trunk/yasm -S svn

Update an existing repository:

$ cd yasm
$ pullr -u

Examples

Pull down a repository:

remote = Pullr::RemoteRepository.new(:uri => 'git://github.com/evanphx/rubinius.git')
remote.pull
# => #<Pullr::LocalRepository: ...>

Pull down a repository into a specific directory:

remote = Pullr::RemoteRepository.new(:uri => 'git://github.com/datamapper/dm-rails.git')
remote.pull('/home/deploy/dm-rails')
# => #<Pullr::LocalRepository: ...>

Pull down a repository from a generic HTTP URL:

remote = Pullr::RemoteRepository.new(:uri => 'http://www.tortall.net/svn/yasm/trunk/yasm', :scm => :svn)
remote.pull

Update an existing repository:

local = Pullr::LocalRepository.new(:path => 'yasm')
local.update

Requirements

Install

$ gem install pullr

Copyright

Copyright (c) 2010-2013 Hal Brodigan

See {file:LICENSE.txt} for license information.