class Bundler::GitSource

def clone

def clone
  # Raise an error if the source should run in local mode,
  # but it has not been cached yet.
  if local
    raise SourceNotCached, "Git repository '#{@uri}' has not been cloned yet"
  end
  Bundler.logger.info "Cloning git repository at: #{@uri}"
  FileUtils.mkdir_p(location.dirname)
  `git clone #{@uri} #{location} --no-hardlinks`
end