class Raykit::Console
def pull
def pull pattern='' pattern=@opts.arguments[1] if(@opts.arguments.length > 1) REPOSITORIES.matches(pattern).each{|url| begin repo=Raykit::Git::Repository.new(url) work=Raykit::Git::Directory.new(repo.get_dev_dir('work')) if(Dir.exist?(work.directory) && !work.directory=='.git') Dir.chdir(work.directory) do diff=`git diff`.strip status=`git status`.strip if(diff.length == 0 && status.include?('nothing to commit')) cmd = Command.new('git pull') cmd.summary if(@opts.verbose?) if(cmd.exitstatus != 0) cmd.details if(@opts.quit?) abort Rainbow(cmd.summary).blue.bright end end end end end rescue => error issue = 'error occurred for pull of ' + url +' ' + error.to_s if(@opts.quit?) abort Rainbow(issue).blue.bright else puts Rainbow(issue).blue.bright end end } end