Sha256: 9e9f341708b7e7aa3a1df53a5dc3cf40718c973b8a3554039de55736b35f1c37
Contents?: true
Size: 724 Bytes
Versions: 49
Compression:
Stored size: 724 Bytes
Contents
module Grit class Config def initialize(repo) @repo = repo end def []=(key, value) @repo.git.config({}, key, value) @data = nil end def [](key) data[key] end def fetch(key, default = nil) data[key] || default || raise(IndexError.new("key not found")) end def keys data.keys end protected def data @data ||= load_config end def load_config hash = {} config_lines.map do |line| key, value = line.split(/=/, 2) hash[key] = value end hash end def config_lines @repo.git.config(:list => true).split(/\n/) end end # Config end # Grit
Version data entries
49 entries across 49 versions & 10 rubygems