Sha256: fd2970d05ccb1f28e1ca4e8f5dd09f25d75f3bd2799db5c3fb8a64ecef580347

Contents?: true

Size: 812 Bytes

Versions: 10

Compression:

Stored size: 812 Bytes

Contents

module Git
  module Multi

    module_function

    def local_option(path, name, default = nil)
      value = `git -C #{path} config --local --get #{name}`.chomp.freeze
      value.empty? && default ? default : value
    end

    def local_list(filename, name)
      list = `git config --file #{filename} --get-all #{name}`
      list.split($RS).map(&:strip).map(&:freeze)
    end

    def global_option(name, default = nil)
      value = `git config --global --get #{name}`.chomp.freeze
      value.empty? && default ? default : value
    end

    def global_list(name, default = nil)
      global_option(name, default).split(',').map(&:strip).map(&:freeze)
    end

    def env_var(name, default = nil)
      value = ENV[name]
      (value.nil? || value.empty?) && default ? default : value
    end

  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
git-multi-2.10.0 lib/git/multi/config.rb
git-multi-2.9.0 lib/git/multi/config.rb
git-multi-2.8.0 lib/git/multi/config.rb
git-multi-2.7.0 lib/git/multi/config.rb
git-multi-2.6.1 lib/git/multi/config.rb
git-multi-2.6.0 lib/git/multi/config.rb
git-multi-2.5.0 lib/git/multi/config.rb
git-multi-2.4.0 lib/git/multi/config.rb
git-multi-2.3.0 lib/git/multi/config.rb
git-multi-2.2.0 lib/git/multi/config.rb