class Repoaccessor::Svn

Attributes

repository_base[R]
svn[R]
svnadmin[R]

Public Class Methods

new(username,pwd) click to toggle source
# File lib/repoaccessor/subversion.rb, line 9
def initialize(username,pwd)
  @svn = `which svn`.strip
  @svnadmin = `which svnadmin`.strip
  @username = username
  @password = pwd
end

Public Instance Methods

add(working_copy, file) click to toggle source
# File lib/repoaccessor/subversion.rb, line 20
def add(working_copy, file)
  `cd #{working_copy} && #{@svn} add #{file}`
end
checkout(repository, working_copy_path) click to toggle source
# File lib/repoaccessor/subversion.rb, line 28
def checkout(repository, working_copy_path)
  `mkdir -p "#{working_copy_path}"`
  system "svn", "co", "#{repository}", "#{working_copy_path}", "--username", "#{@username}", "--password", "#{@password}", "--no-auth-cache", "--non-interactive" # checkout
  $?.success?
end
commit(working_copy, message) click to toggle source
# File lib/repoaccessor/subversion.rb, line 16
def commit(working_copy, message)
  `cd #{working_copy} && #{@svn} commit -m "#{message}"`
end
info(working_copy) click to toggle source
# File lib/repoaccessor/subversion.rb, line 34
def info(working_copy)
  result = `#{@svn} info #{working_copy}`
  yaml = YAML.load(result)
  yaml['Revision'].to_s
end
update(working_copy) click to toggle source
# File lib/repoaccessor/subversion.rb, line 24
def update(working_copy)
  `cd #{working_copy} && #{@svn} up`
end