web-dev-qa-db-ja.com

自作の致命的:単一のリビジョンが必要(MacOs Sierra)

この問題がMacOs Sierraへのアップグレードに関連しているかどうかはわかりませんが、その瞬間から、「brew update」を実行するとこのエラーが発生します

→ brew update
Checking out v1.0.0 in /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask...
To checkout master in /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask run:
  'cd /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask && git checkout master
fatal: Cannot update paths and switch to branch 'v1.0.0' at the same time.
Did you intend to checkout 'refs/tags/1.0.0' which can not be resolved as commit?
fatal: Needed a single revision
invalid upstream refs/tags/1.0.0
Checking out v1.0.0 in /usr/local/Homebrew/Library/Taps/Dart-lang/homebrew-Dart...
To checkout master in /usr/local/Homebrew/Library/Taps/Dart-lang/homebrew-Dart run:
  'cd /usr/local/Homebrew/Library/Taps/Dart-lang/homebrew-Dart && git checkout master
fatal: Cannot update paths and switch to branch 'v1.0.0' at the same time.
Did you intend to checkout 'refs/tags/1.0.0' which can not be resolved as commit?
fatal: Needed a single revision
invalid upstream refs/tags/1.0.0
Checking out v1.0.0 in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core...
To checkout master in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core run:
  'cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core && git checkout master
fatal: Cannot update paths and switch to branch 'v1.0.0' at the same time.
Did you intend to checkout 'refs/tags/1.0.0' which can not be resolved as commit?
fatal: Needed a single revision
invalid upstream refs/tags/1.0.0

走ってみた

cd $(brew --prefix) && git fetch && git reset --hard Origin/master

しかし、それは私にこのエラーを与えます:

fatal: Not a git repository (or any of the parent directories): .git
30

Sierraにアップグレードした後も同じ問題が発生しました。

Homebrewのインストールパスを表示する_brew --prefix_の他に、_brew --repository_ディレクトリの場所を表示する_.git_もあります。

_man brew_は、「標準インストールの場合、プレフィックスとリポジトリは同じディレクトリである」と述べています。 manページが古いか、私のインストールが「標準」ではありませんが、私のprefixは_/usr/local_であり、私のrepositoryは_/usr/local/Homebrew_です。

同じコマンドをcd $(brew --repository)とともに使用すると、うまくいきました:

_cd $(brew --repository) && git fetch && git reset --hard Origin/master
_
59
thomasd

受け入れられた答えは私にとってはうまくいきませんでした。うまくいったのは、homebrewをアンインストールして再インストールすることでした。

Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
/usr/bin/Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew analytics off
2
herrtim

私にとって何も実際にはうまくいきませんでした。Brewをアンインストールして再インストールすることに頼らなければなりませんでした。

# change to home directory to avoid other errors later
cd ~

# uninstall brew
rm -rf /usr/local/Cellar /usr/local/.git && cd ~ && brew cleanup

 # reinstall brew
/usr/bin/Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
0
a20