module GitCheckClean

takeltau git check clean

Public Instance Methods

git_check_clean() click to toggle source

Backend method for git check clean. @return [Boolean] is git workspace clean?

# File lib/takeltau/git/check/clean.rb, line 7
def git_check_clean
  log.debug 'Checking if git workspace is clean'

  return false unless git_check_workspace

  status_unstaged = _git_check_clean_get_status_unstaged
  status_uncommitted = _git_check_clean_get_status_uncommitted
  stdout_str_status = _git_check_clean_get_str_status

  # only return true if neither unstaged nor uncommitted nor empty files
  sum = status_unstaged.exitstatus +
        status_uncommitted.exitstatus +
        stdout_str_status.length

  sum.zero?
end

Private Instance Methods

_git_check_clean_get_status_uncommitted() click to toggle source

Get git status of uncommitted changes.

# File lib/takeltau/git/check/clean.rb, line 34
def _git_check_clean_get_status_uncommitted
  cmd_git_uncommitted =
    config.active['cmd_git_check_clean_git_uncommitted']
  try cmd_git_uncommitted
end
_git_check_clean_get_status_unstaged() click to toggle source

Get git status of unstaged changes.

# File lib/takeltau/git/check/clean.rb, line 27
def _git_check_clean_get_status_unstaged
  cmd_git_unstaged =
    config.active['cmd_git_check_clean_git_unstaged']
  try cmd_git_unstaged
end
_git_check_clean_get_str_status() click to toggle source

Get git status result.

# File lib/takeltau/git/check/clean.rb, line 41
def _git_check_clean_get_str_status
  cmd_git_status =
    config.active['cmd_git_check_clean_git_status']
  run cmd_git_status
end