23

パッケージマネージャーはHomebrewを使っています。次のコマンドを実行します。

brew update

しかし、私はこのエラーが発生しました:

エラー: 古い 'bin/brew' のリンクを解除できません (許可が拒否されました)

エラー: git pull http://github.com/mxcl/homebrew.git master の実行中に失敗しました

sudo で再度実行:

/usr/local/Library/Homebrew/brew.h.rb:1: 警告: 定数 FORMULA_META_FILES が既に初期化されています
/usr/local/Library/Homebrew/brew.h.rb:2: 警告: 定数が既に初期化されています PLEASE_REPORT_BUG エラー: 以下追跡されていない作業ツリー ファイルは、チェックアウトによって上書きされます。

.gitignore
;;; ここに大きなリストが入ります ;;;;

そして今、すべてのbrewコマンドがこれらの警告を生成します:

/usr/local/Library/Homebrew/brew.h.rb:1: 警告: 定数 FORMULA_META_FILES が既に初期化されています
/usr/local/Library/Homebrew/brew.h.rb:2: 警告: 定数が既に初期化されています PLEASE_REPORT_BUG

何がうまくいかないのですか?

4

3 に答える 3

42

エラーが発生する前に半分が更新されたように聞こえますが、現在は状態が悪いです。あなたがしたいかもしれません

cd /usr/local && git reset --hard HEAD

これにより、すべての git 制御ファイル (homebrew など) が元のバージョンにリセットされます。sudoその git コマンドが必要になる場合があります。その後、必要に応じてパーミッションの修正を試みることができます (これはsudo chown -R yourname:staff /usr/local、そのディレクトリ内のファイルを他の誰かが所有する必要がない場合に実行するのと同じくらい簡単です)。

于 2011-03-26T02:49:10.927 に答える
1

/usr/local/bin にユーザー アカウントの書き込み権限があることを確認してください。

于 2012-12-29T09:21:03.383 に答える
0

今日も同様の問題がありました。これは正しい方向を示していましたが、リセットでは十分ではありませんでした。方法はわかりませんが、どういうわけか、追跡されていないファイルがかなりあったので、git statusを実行した後に気付きました。

私は最終的にすべてのファイルのコピーを作成し(安全のために)、それらを削除しました.brew updateが魅力的に機能した後

于 2012-06-27T00:09:24.803 に答える