<commit_before>module FlashFlow
  class Git
    attr_reader :merge_branch, :master_branch, :use_rerere

    UNMERGED_STATUSES = %w{DD AU UD UA DU AA UU}

    def initialize(cmd_runner, merge_branch, master_branch, use_rerere)
      @cmd_runner = cmd_runner
      @merge_branch = merge_branch
      @master_branch = master_branch
      @working_branch = current_branch
      @use_rerere = use_rerere
    end

    def last_stdout
      @cmd_runner.last_stdout
    end

    def last_command
      @cmd_runner.last_command
    end

    def last_success?
      @cmd_runner.last_success?
    end

    def run(cmd)
      @cmd_runner.run("git #{cmd}")
    end

    def add_and_commit(files, message, opts={})
      files = [files].flatten
      run("add #{'-f ' if opts[:add] && opts[:add][:force]}#{files.join(' ')}")
      run("commit -m #{message}")
    end

    def push(branch, options)
      run("push #{'-f' if options[:force]} origin #{branch}")
    end

    def merge(branch)
      run("merge #{branch}")<commit_msg>Fix bug in branch info<commit_after>module FlashFlow
  class Git
    attr_reader :merge_branch, :master_branch, :use_rerere

    UNMERGED_STATUSES = %w{DD AU UD UA DU AA UU}

    def initialize(cmd_runner, merge_branch, master_branch, use_rerere)
      @cmd_runner = cmd_runner
      @merge_branch = merge_branch
      @master_branch = master_branch
      @working_branch = current_branch
      @use_rerere = use_rerere
    end

    def last_stdout
      @cmd_runner.last_stdout
    end

    def last_command
      @cmd_runner.last_command
    end

    def last_success?
      @cmd_runner.last_success?
    end

    def run(cmd)
      @cmd_runner.run("git #{cmd}")
    end

    def add_and_commit(files, message, opts={})
      files = [files].flatten
      run("add #{'-f ' if opts[:add] && opts[:add][:force]}#{files.join(' ')}")
      run("commit -m '#{message}'")
    end

    def push(branch, options)
      run("push #{'-f' if options[:force]} origin #{branch}")
    end

    def merge(branch)
      run("merge #{branch}")
{'fraction_non_alphanumeric': 0.12029339853300733, 'fraction_numerical': 0.0, 'mean_word_length': 2.9120458891013383, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '196826', 'n_tokens_mistral': 697, 'n_tokens_neox': 685, 'n_words': 159}