Sha256: ba57e5d8261317e2f10e1535f2ca795f29ff9deed9b9303e0812a89ffcf8c9f5
Contents?: true
Size: 742 Bytes
Versions: 6
Compression:
Stored size: 742 Bytes
Contents
module PreCommit class Utils def self.staged_files @staged_files ||= begin files = `git diff --cached --name-only --diff-filter=ACM`.split files.reject { |f| size = File.size(f); size > 1_000_000 || (size > 20 && binary?(f)) } end end # from https://github.com/djberg96/ptools/blob/master/lib/ptools.rb#L90 def self.binary?(file) s = (File.read(file, File.stat(file).blksize) || "").split(//) ((s.size - s.grep(" ".."~").size) / s.size.to_f) > 0.30 end def self.grep grep_version = `grep --version | head -n 1 | sed -e 's/^[^0-9.]*\([0-9.]*\)$/\1/'` if grep_version =~ /FreeBSD/ "grep -EnIH" else "grep -PnIH" end end end end
Version data entries
6 entries across 6 versions & 1 rubygems