lib/git_curate/runner.rb
def get_upstream_branches
      command_to_a("git branch -vv").map do |line|
        line.gsub!(LEADING_STAR_REGEX, "")
        branch_name = line.split(BRANCH_NAME_REGEX)[0]
        remote_info = line[REMOTE_INFO_REGEX, 1]
        if remote_info.nil?
          nil
        else
          comparison_raw = remote_info.split(":")
          comparison = if comparison_raw.length < 2
                         "Up to date"
                       else
                         comparison_raw[1].strip.capitalize
                       end
          [branch_name, comparison]
        end
      end.compact.to_h
    end
def get_upstream_branches
      command_to_a("git branch -vv").map do |line|
        line.gsub!(LEADING_STAR_REGEX, "")
        branch_name = line.split(BRANCH_NAME_REGEX)[0]
        remote_info = line[REMOTE_INFO_REGEX, 1]
        if remote_info.nil?
          nil
        else
          comparison_raw = remote_info.split(":")
          comparison = if comparison_raw.length < 2
                         "Up to date"
                       else
                         comparison_raw[1].strip.capitalize
                       end
          [branch_name, comparison]
        end
      end.compact.to_h
    end
Returns a Hash containing, as keys, all local branches that have upstream branches,
 and, as values, a brief description of each branch's status relative to its upstream
 branch (up to date, or ahead/behind)