class Git
Public Class Methods
amnesia_max()
click to toggle source
# File lib/git-amnesia/git.rb, line 14 def self.amnesia_max count = `git config amnesia.count`.trim.to_i if $?.exitstatus == 0 count else @amnesia_count_default end end
logs(repos)
click to toggle source
# File lib/git-amnesia/git.rb, line 38 def self.logs(repos) logs = [] repos.each do |repo| cmd = "cd '#{repo}' 2>/dev/null" + " && git log --max-count=#{Git.amnesia_max} --author='#{Git.author_name}'" + " --all --pretty=format:'%at::#{repo.basename}::%s' 2>/dev/null" log = `#{cmd}` if $?.exitstatus == 0 logs += log.explode.map { |l| Log.new(l) } end end logs end
other_dirs()
click to toggle source
# File lib/git-amnesia/git.rb, line 10 def self.other_dirs `git config dir.others | envsubst`.split_dirs.explode end
repos()
click to toggle source
# File lib/git-amnesia/git.rb, line 27 def self.repos workspace = Git.workspace repos = Git.other_dirs if !workspace.empty? repos += `ls #{workspace}`.explode.map do |r| r.prepend("#{workspace}/") end end repos end
workspace()
click to toggle source
# File lib/git-amnesia/git.rb, line 6 def self.workspace `git config dir.workspace | envsubst`.trim end