Sha256: db73dd4a9dd6961a7c5082839067f7da2924972af24ea530834b7c91463f7245

Contents?: true

Size: 664 Bytes

Versions: 1

Compression:

Stored size: 664 Bytes

Contents

# For more info see: https://github.com/schacon/ruby-git

require 'git'

module Danger
  class GitRepo
    attr_accessor :diff

    def diff_for_folder(folder, from = "master", to = 'HEAD')
      g = Git.open(folder)
      self.diff = g.diff(from, to)
    end

    def files_modified
      @diff.to_a.map(&:path)
    end

    def files_removed
      @diff.to_a.select { |d| d.type == "deleted" }.map(&:path)
    end

    def files_added
      @diff.to_a.select { |d| d.type == "new" }.map(&:path)
    end

    def lines_of_code
      @diff.lines
    end

    def deletions
      @diff.deletions
    end

    def insertions
      @diff.insertions
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
danger-0.3.0 lib/danger/scm_source/git_repo.rb