![Mac OS XでGitを更新しようとして古いGitをアンインストールしようとすると失敗する](https://rvso.com/image/1466438/Mac%20OS%20X%E3%81%A7Git%E3%82%92%E6%9B%B4%E6%96%B0%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%97%E3%81%A6%E5%8F%A4%E3%81%84Git%E3%82%92%E3%82%A2%E3%83%B3%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%99%E3%82%8B%E3%81%A8%E5%A4%B1%E6%95%97%E3%81%99%E3%82%8B.png)
Mac OS X 10.8.5 (Mountain Lion) で git を更新しようとしています。
この新しいバージョンをダウンロードしたのはこのリンクをダブルクリックしてターミナルに.dmg
ドラッグしましたuninstall.sh
(指示に従ってそこには) を実行して古いバージョンをアンインストールすると、次のメッセージが表示されます。
Git doesn't appear to be installed via this installer. Aborting
git
現在、私のコンピュータにインストールされていることに注意してください。
$ git --version
git version 1.7.9.6 (Apple Git-31.1)
$ which git
/usr/bin/git
なぜアンインストールできないのですか? どうすればアップデートできますかgit
?
答え1
Macでは最も簡単な方法は自家製。
- brewをインストールする
- 指示に従ってください
brew doctor
($PATH
/usr/local/bin:$PATH
brew install git
手動アップデートの心配は無用です。brew update && brew upgrade
定期的に実行してください。
既存のものをインストールできない理由:
- Apple には、Xcode が使用するデフォルトの git インストールがあります (Xcode または少なくともコマンドライン ユーティリティがインストールされていると仮定)
答え2
より短い答え。
git
Mac OS X で表示されているXcode をアンインストールする必要はありません。次のように編集して/usr/local/git/bin
追加するだけです。$PATH
~/.bash_profile
export PATH
export PATH="/usr/local/git/bin:$PATH"
次に、そのファイルを閉じて保存し、次のように入力してターミナル セッションに読み込みます。
source ~/.bash_profile
また、新しくインストールしたものは、既にgit
インストールされている Xcode よりも優先してアクセスできるようになります。git
より長い答え。
エラー メッセージを解釈します。
uninstall.sh
この問題は、付属のBashスクリプトの内容を見れば理解できます。Mac OS X 用の公式 Git インストーラー パッケージ正確に何が起こるか確認するには、次のコードを実行してください。エラーが発生している先頭近くのコードは次のとおりです。
#!/bin/bash
if [ ! -r "/usr/local/git" ]; then
echo "Git doesn't appear to be installed via this installer. Aborting"
exit 1
fi
行に注意してくださいif [ ! -r "/usr/local/git" ]; then
。Bash スクリプトはこのディレクトリ パスの存在を確認しています。
/usr/local/git/
しかし、which git
パス ディレクトリ パスを実行すると、次のようになります。
/usr/bin/
これは、公式インストーラがの Mac OS X コア ディレクトリではなくgit
に項目をインストールすることを示しています。/usr/local/git/
/usr/bin/
では、すでに導入されている の他のバージョンは何でしょうか?詳細については、git
の出力を確認してみましょう。git --version
$ git --version
git version 1.7.9.6 (Apple Git-31.1)
わかりますか(Apple Git-31.1)
? これは、Apple によってインストールされたことを示しています。 はgit
Mac OS X のコア セットアップの一部ではないため、これをインストールできる唯一の方法は、Xcode と関連するコマンド ライン バイナリを使用することです。
つまり、 の Xcode バージョンをアンインストールすることはできませんし、アンインストールすべきでもありません。代わりに、ターミナルで のコア Mac OS X バイナリよりも にインストールされたバイナリgit
を優先するように設定する必要があります。これは、 の設定を変更することで実行できます。git
/usr/local/git/bin/
/usr/bin/
$PATH
~/.bash_profile
問題を修正しています。
~/.bash_profile
まず、テキスト エディターで開きます。私はnano
次のようにして、コマンド ラインで直接これを行うことを好みます。
nano ~/.bash_profile
export $PATH
そこに が存在しない場合は、次のような行をファイルに~/.bash_profile
追加します。$PATH
export PATH="/usr/local/git/bin:$PATH"
そこに が存在する場合は、その値がシステムのメインより前になるexport $PATH
ように変更します。区切り文字に注意してください。/usr/local/git/bin
$PATH
:
次に、ファイルを閉じて保存し、次のように入力してターミナル セッションに読み込みます。
source ~/.bash_profile
ここで次のように入力します:
which git
出力は次のようになります。
/usr/local/git/bin/git
つまり、ターミナルは、バイナリのデフォルト値で他のディレクトリのチェックに進む前に$PATH
チェックインするようになります。/usr/local/git/bin/
$PATH
git
したがって、の Xcode バージョンをアンインストールしなくても、git
公式の (更新された)git
バイナリをダウンロードしてインストールし、Homebrew やその他のものを操作せずに使用できるようになりました。たとえば、私のシステムでは、の現在の出力はgit --version
次のようになります。
git version 2.5.3
(Apple Git-31.1)
見えません。この調整git
により、最新かつすぐに使用できる純粋なバージョン番号になりました。$PATH
答え3
インストールしたgit
だけでは十分ではありません。は、機能する git リポジトリ フォルダーに 'dgit
されている場合にのみ機能することに注意してくださいcd
。つまり、./.git
フォルダーが表示され (ヒント:ls -la
隠しフォルダーを表示するには を使用します)、git status
以下の例のようなものが返されるはずです。
[some_repo]$ git status
On branch master
Your branch is up-to-date with 'origin/prod'.
nothing to commit, working directory clean
ただし、フォルダーが有効な Git リポジトリでない場合は、次のような表示になります。
[~]$ git status
fatal: Not a git repository (or any of the parent directories): .git