Merge pull request #153 from mroth/integrated-branch-porcelain

integrate branch parsing into single system call
This commit is contained in:
Wilhelmina Drengwitz
2017-01-30 15:19:59 -05:00
committed by GitHub

View File

@@ -22,14 +22,15 @@
@project_root = File.exist?(".git") ? Dir.pwd : `\git rev-parse --show-toplevel 2> /dev/null`.strip @project_root = File.exist?(".git") ? Dir.pwd : `\git rev-parse --show-toplevel 2> /dev/null`.strip
@git_status = `\git status --porcelain 2> /dev/null` @git_status = `\git status --porcelain -b 2> /dev/null`
git_branch = `\git branch -v 2> /dev/null` git_status_lines = @git_status.split("\n")
@branch = git_branch[/^\* (\(no branch\)|[^ ]*)/, 1] git_branch = git_status_lines[0]
@ahead = git_branch[/^\* [^ ]* *[^ ]* *\[ahead ?(\d+).*\]/, 1] @branch = git_branch[/^## (?:Initial commit on )?([^ \.]+)/, 1]
@behind = git_branch[/^\* [^ ]* *[^ ]* *\[.*behind ?(\d+)\]/, 1] @ahead = git_branch[/\[ahead ?(\d+).*\]/, 1]
@behind = git_branch[/\[.*behind ?(\d+)\]/, 1]
@changes = @git_status.split("\n") @changes = git_status_lines[1..-1]
# Exit if too many changes # Exit if too many changes
exit if @changes.size > ENV["gs_max_changes"].to_i exit if @changes.size > ENV["gs_max_changes"].to_i