Merge pull request #3229 from BenMusch/check-for-master-no-refactor

doctor: Check for branch of core tap (take 2)
This commit is contained in:
Mike McQuaid 2017-10-18 10:59:59 +01:00 committed by GitHub
commit 3a606abaa1
3 changed files with 27 additions and 0 deletions

View File

@ -787,6 +787,18 @@ module Homebrew
git -C "#{coretap_path}" remote set-url origin #{Formatter.url("https://github.com/Homebrew/homebrew-core.git")}
EOS
end
return if ENV["CI"] || ENV["JENKINS_HOME"]
branch = coretap_path.git_branch
return if branch.nil? || branch =~ /master/
<<-EOS.undent
Homebrew/homebrew-core is not on the master branch
Check out the master branch by running:
git -C "$(brew --repo homebrew/core)" checkout master
EOS
end
def __check_linked_brew(f)

View File

@ -36,6 +36,15 @@ module GitRepositoryExtension
end
end
def git_branch
return unless git? && Utils.git_available?
cd do
Utils.popen_read(
"git", "rev-parse", "--abbrev-ref", "HEAD"
).chuzzle
end
end
def git_last_commit_date
return unless git? && Utils.git_available?
cd do

View File

@ -115,6 +115,12 @@ class Tap
path.git?
end
# git branch for this {Tap}.
def git_branch
raise TapUnavailableError, name unless installed?
path.git_branch
end
# git HEAD for this {Tap}.
def git_head
raise TapUnavailableError, name unless installed?