Skip to content
Snippets Groups Projects
Commit 8000fb80 authored by Simon Sigurdhsson's avatar Simon Sigurdhsson Committed by Jack Nagel
Browse files

Doctor check for origin


Added checks on doctor.rb for:

* Missing git origin
* git origin not pointing at mxcl/homebrew

Tests use `git config --get remote.origin.url`.
Also added printout of origin to --config.rb.

Fixes Homebrew/homebrew#14399.
Closes Homebrew/homebrew#17117.

Signed-off-by: default avatarJack Nagel <jacknagel@gmail.com>
parent 968782a3
No related branches found
No related tags found
No related merge requests found
......@@ -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}"
......
......@@ -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?
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment