# File lib/dm-core.rb, line 249
  def self.repository(name = nil)
    context = Repository.context

    current_repository = if name
      name = name.to_sym
      context.detect { |repository| repository.name == name }
    else
      name = Repository.default_name
      context.last
    end

    current_repository ||= Repository.new(name)

    if block_given?
      current_repository.scope { |*block_args| yield(*block_args) }
    else
      current_repository
    end
  end