diff --git a/Library/Homebrew/cmd/config.rb b/Library/Homebrew/cmd/config.rb index 9ee9cace24..133e01439d 100644 --- a/Library/Homebrew/cmd/config.rb +++ b/Library/Homebrew/cmd/config.rb @@ -44,10 +44,7 @@ module Homebrew end def head - head = HOMEBREW_REPOSITORY.cd do - `git rev-parse --verify -q HEAD 2>/dev/null`.chomp - end - if head.empty? then "(none)" else head end + Homebrew.git_head || "(none)" end def origin diff --git a/Library/Homebrew/tab.rb b/Library/Homebrew/tab.rb index 52b74e5c92..b5bd8a2ad5 100644 --- a/Library/Homebrew/tab.rb +++ b/Library/Homebrew/tab.rb @@ -14,10 +14,6 @@ class Tab < OpenStruct build = f.build.dup build.args = args - sha = HOMEBREW_REPOSITORY.cd do - `git rev-parse --verify -q HEAD 2>/dev/null`.chuzzle - end - Tab.new :used_options => build.used_options, :unused_options => build.unused_options, :tabfile => f.prefix.join(FILENAME), @@ -25,7 +21,7 @@ class Tab < OpenStruct :poured_from_bottle => false, :tapped_from => f.tap, :time => Time.now.to_i, - :HEAD => sha, + :HEAD => Homebrew.git_head, :compiler => compiler, :stdlib => stdlib end diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index 6684b3696e..eae5c922e8 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -112,6 +112,10 @@ module Homebrew Process.wait(pid) $?.success? end + + def self.git_head + HOMEBREW_REPOSITORY.cd { `git rev-parse --verify -q HEAD 2>/dev/null`.chuzzle } + end end def with_system_path