From 8aaa95ee993187f763b0953d3720b5f6308472d3 Mon Sep 17 00:00:00 2001 From: Tim D. Smith Date: Sat, 12 Mar 2016 18:36:12 -0800 Subject: Add advice about keychain credentials Fixes Homebrew/homebrew#50050. Closes Homebrew/homebrew#50059. --- Library/Homebrew/utils.rb | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'Library') diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index 474c99612..1fbb5afac 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -487,7 +487,7 @@ module GitHub GitHub #{error} Try again in #{pretty_ratelimit_reset(reset)}, or create a personal access token: #{Tty.em}https://github.com/settings/tokens/new?scopes=&description=Homebrew#{Tty.reset} - and then set the token as: HOMEBREW_GITHUB_API_TOKEN + and then set the token as: export HOMEBREW_GITHUB_API_TOKEN="your_new_token" EOS end @@ -498,11 +498,20 @@ module GitHub class AuthenticationFailedError < Error def initialize(error) - super <<-EOS.undent - GitHub #{error} - HOMEBREW_GITHUB_API_TOKEN may be invalid or expired, check: + message = "GitHub #{error}\n" + if ENV["HOMEBREW_GITHUB_API_TOKEN"] + message << <<-EOS.undent + HOMEBREW_GITHUB_API_TOKEN may be invalid or expired; check: #{Tty.em}https://github.com/settings/tokens#{Tty.reset} - EOS + EOS + else + message << <<-EOS.undent + The GitHub credentials in the OS X keychain are invalid. + Clear them with: + printf "protocol=https\\nhost=github.com\\n" | git credential-osxkeychain erase + EOS + end + super message end end -- cgit v1.2.3