Module: Gity::Operation::RemoveStaged
Instance Method Summary collapse
Methods included from Common
#_cls, #_flash, #_fmt, #_logger, #_operation_done, #_pastel, #_prmt, #print_header
Instance Method Details
#remove_staged(ws, files, &block) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/gity/operation/remove_staged.rb', line 8 def remove_staged(ws, files, &block) _cls print_header _prmt.puts print_workspace_items(ws, files, skip_other_files: true) _prmt.puts efiles = files.staged[:files] + files.staged[:dirs] sels = _prmt.multi_select(_fmt("Please select all files to be removed from staging : "), filter: true, per_page: 10) do |m| efiles.sort.each do |f| m.choice f,f.path end end block.call(:before_remove_staged_file, sels) if block st, res = ws.remove_from_staging(*sels) block.call(:after_remove_staged_file, sels) if block raise OperationError, "Remove from staging failed with error : #{res}" if not st end |