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