diff options
Diffstat (limited to 'Library/Homebrew/cmd')
| -rw-r--r-- | Library/Homebrew/cmd/--config.rb | 8 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/doctor.rb | 38 |
2 files changed, 46 insertions, 0 deletions
diff --git a/Library/Homebrew/cmd/--config.rb b/Library/Homebrew/cmd/--config.rb index ac113c885..6f6368291 100644 --- a/Library/Homebrew/cmd/--config.rb +++ b/Library/Homebrew/cmd/--config.rb @@ -54,6 +54,13 @@ module Homebrew extend self if head.empty? then "(none)" else head end end + def origin + origin = HOMEBREW_REPOSITORY.cd do + `git config --get remote.origin.url`.chomp + end + if origin.empty? then "(none)" else origin end + end + def describe_path path return "N/A" if path.nil? realpath = path.realpath @@ -124,6 +131,7 @@ module Homebrew extend self def dump_verbose_config puts "HOMEBREW_VERSION: #{HOMEBREW_VERSION}" + puts "ORIGIN: #{origin}" puts "HEAD: #{head}" puts "HOMEBREW_PREFIX: #{HOMEBREW_PREFIX}" puts "HOMEBREW_CELLAR: #{HOMEBREW_CELLAR}" diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb index 9ab3c46f8..d57226a99 100644 --- a/Library/Homebrew/cmd/doctor.rb +++ b/Library/Homebrew/cmd/doctor.rb @@ -721,6 +721,44 @@ def check_git_newline_settings end end +def check_for_git_origin + return unless which "git" + + HOMEBREW_REPOSITORY.cd do + if `git config --get remote.origin.url`.chomp.empty? then <<-EOS.undent + Missing git origin remote. + + Without a correctly configured origin, Homebrew won't update + properly. You can solve this by adding the Homebrew remote: + cd #{HOMEBREW_REPOSITORY} + git add remote origin https://github.com/mxcl/homebrew.git + EOS + end + end +end + +def check_the_git_origin + return unless which "git" + return if check_for_git_origin + + HOMEBREW_REPOSITORY.cd do + origin = `git config --get remote.origin.url`.chomp + + unless origin =~ /mxcl\/homebrew\.git$/ then <<-EOS.undent + Suspicious git origin remote found. + + With a non-standard origin, Homebrew won't pull updates from + the main repository. The current git origin is: + #{origin} + + Unless you have compelling reasons, consider setting the + origin remote to point at the main repository, located at: + https://github.com/mxcl/homebrew.git + EOS + end + end +end + def check_for_autoconf return unless MacOS::Xcode.provides_autotools? |
