Class: Gitit::GitStatus
- Inherits:
-
Object
- Object
- Gitit::GitStatus
- Includes:
- GitExecutor
- Defined in:
- lib/gitit/git_status.rb
Overview
Instance Attribute Summary
Attributes included from GitExecutor
Instance Method Summary collapse
-
#clean? ⇒ Boolean
————————————————————————- ————————————————————————-.
-
#initialize(repo) ⇒ GitStatus
constructor
————————————————————————- ————————————————————————-.
-
#uncommited_files? ⇒ Boolean
————————————————————————- ————————————————————————-.
-
#unstaged_files? ⇒ Boolean
————————————————————————- ————————————————————————-.
-
#untracked_files? ⇒ Boolean
————————————————————————- ————————————————————————-.
Methods included from GitExecutor
Constructor Details
#initialize(repo) ⇒ GitStatus
12 13 14 |
# File 'lib/gitit/git_status.rb', line 12 def initialize(repo) @repo = repo end |
Instance Method Details
#clean? ⇒ Boolean
18 19 20 |
# File 'lib/gitit/git_status.rb', line 18 def clean? !unstaged_files? && !uncommited_files? && !untracked_files? end |
#uncommited_files? ⇒ Boolean
31 32 33 34 |
# File 'lib/gitit/git_status.rb', line 31 def uncommited_files? execute_command('diff --cached --no-ext-diff --ignore-submodules --quiet --exit-code') $?.exitstatus == 1 end |
#unstaged_files? ⇒ Boolean
24 25 26 27 |
# File 'lib/gitit/git_status.rb', line 24 def unstaged_files? execute_command('diff-files --name-status --diff-filter=M --exit-code') $?.exitstatus == 1 end |
#untracked_files? ⇒ Boolean
38 39 40 41 42 43 44 45 |
# File 'lib/gitit/git_status.rb', line 38 def untracked_files? # execute_command('status --porcelain | grep ??') # $?.exitstatus == 0 result = execute_command('status --porcelain') match = result.each_line.select { |b| b.start_with? '?? ' } match.length > 0 end |