Module: GitkeepCleaner
- Defined in:
- lib/gitkeep_cleaner.rb,
lib/gitkeep_cleaner/cli.rb,
lib/gitkeep_cleaner/version.rb
Defined Under Namespace
Classes: Cli
Constant Summary collapse
- VERSION =
"0.1.1"
Class Method Summary collapse
Class Method Details
.clean(root_path:, ignore_paths: []) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/gitkeep_cleaner.rb', line 6 def clean(root_path:, ignore_paths: []) logger = Logger.new(STDOUT) paths = %w(.gitkeep .keep).map { |filename| "#{root_path}/**/*/#{filename}" } ignore_full_paths = ignore_paths.map {|v| "#{root_path}/#{v}" } paths.each do |path| Dir.glob(path) do |keep_file_path| dir_path = File.dirname(keep_file_path) next if ignore_full_paths.include?(dir_path) files = Dir.glob(["#{dir_path}/**/*.*", "#{dir_path}/**/.*"]) if files.size > 1 logger.info("Remove: #{keep_file_path}") File.delete(keep_file_path) end end end end |