MacでHomebrewがインストールしたgitを使用するにはどうすればよいですか?

自作を使用して最新バージョンのgit(1.8.3)をインストールしましたが、入力すると

git --version 

端末に次のように出力されます:

git version 1.7.10.2 (Apple Git-33) 

古いバージョンのgitを新しいバージョンに置き換えるにはどうすればよいですか?

コメント

  • 良い答えがいくつかあるので、質問にコメントしたいと思います。自作またはGUIクライアントからのソースからgitをインストールするための明示的な指示を探していますか、それともOS XがコアOSにgitのいくつかのバージョンをバンドルしていることの確認だけですか? opensource.apple.com/source/Git (FWIW-これまでにAppleバンドルを見た最新のgit ‘は1.7.12.4で、これはGit-37からのものです)

回答

役立つ回答をありがとうございます。私の場合、

export PATH="/usr/local/bin:${PATH}" 

~/.bash_profileに続けて

source ~/.bash_profile 

ユーザーの問題を解決しました。

コメント

  • 変更をユーザー間で永続的にしたい場合は、移動できます/etc/pathsの/usr/binの上にあるdivid = “c71e5b6b67”>

  • これは提案されたソリューションです問題を診断するためにbrew doctorを実行するときにHomebrew自体によって
  • この回答は、/etc/paths/usr/binにividがある場合、” export “のみを定義するだけでは不十分な場合があります= “7e362fe136″> precedence ” over /usr/local/bin(醸造から)…
  • 覚えておいてくださいターミナルを再起動します!以下のフアンディエゴゴンザレス’のコメントを見るまで’は思い浮かびませんでした
  • @Souleiman:再起動はありません’必要ありません。 source ~/.bash_profileがそれを読み直します。再起動はおそらくより速く/より簡単です。 🙂
  • 回答

    ステータス2020

    ここでいくつかの回答に記載されているすべてのトリックmacOS Sierra、Mojave &カタリナと最新の自作ではもう必要ありません。 export PATH="..."~/.bash_profileへの変更を忘れてください。

    単に行う

    brew install git 

    これで完了です。

    確認するには、新しいターミナルウィンドウ/タブを開き、次のように入力します

    git --version 

    新しいウィンドウを開くことを忘れないでください。 installを開始する前に開いていたターミナルは変更を継承しません。

    回答

    わかりました。scmについて真剣に取り組む準備ができています。

    $ git --version git version 1.9.5 (Apple Git-50.3) 

    いいえ、それは私が望んでいたことではありません。私は< 3自作なので、

    $ brew install git 

    すべて設定しましたか?

    $ git --version git version 1.9.5 (Apple Git-50.3) 

    おやおや! (スクラッチヘッド)

    $ which git /usr/bin/git 

    ああ、Appleのgitは/ usr / binにあるので、自作のものよりも優先されます。どうすればよいですか?

    (A)Appleのバイナリの名前を変更するだけです

    (B)自作で管理されているものを優先させます:

    [edit PATH export eg 〜/ .zshrc(oh-my-zsh + iTerm2 FTW!/ tangent)]

    [具体的には、/ usr / local / bin / git:の前に/ usr / bin:]

    を移動します。

    …および/または(たとえば、自作のものをトランプシステムにインストールさせ、すべてのシェルとユーザーに優先順位を適用するために)/ etc / pathsファイルを編集します[/ usr / local / binを/の上に移動しますusr / bin]

    ただし、最も単純で侵襲性の低いアプローチを想定すると、次のようになります。

    $ sudo mv /usr/bin/git /usr/bin/git-apple 

    機能しましたか?

    $ which git /usr/local/bin/git 

    これまでのところ順調ですが、今は真実の瞬間です:

    $ git --version git version 2.2.1 

    w00t! :)読む時間 http://git-scm.com ! 🙂

    コメント

    • / usr / binの編集のリスクに関するコメントへのPS関連:IMHO it ‘ sNBD。 (私はGlobal nomad ‘の提案が好きです。” sudo ln -s / usr / local / bin / git / usr / bin / git ” …これにより、” / usr / bin / git “は明示的に醸造管理されたものを取得します。しかし、私の考えでは、gitをインストールすると、’システムでgitの所有権を取得することになります。古いプロセスを使用した未知のプロセスについての心配、gitの代替バージョンが置き忘れられている可能性があります。gitバージョン(機能だけでなくセキュリティのため)を最新の状態に保ち、自分で管理することをお勧めします。Homebrewを使用するとこれが簡単になります。/$0.02
    • これはしませんでした’うまくいきません。元に戻すには、次のようにします。sudomv / usr / bin / git-apple / usr / bin/git。JuanDiegoGonzales’のコメントは機能しました(基本的に、受け入れられた回答に従ってからターミナルを再起動します)。
    • which git/usr/local/bin/gitを指していても、これは’私のために働く。これを解決するには、GitHubMacアプリをアンインストールする必要がありました。
    • MacOS 10.12.5:sudo mv /usr/bin/git /usr/bin/git-apple mv: rename /usr/bin/git to /usr/bin/git-apple: Operation not permitted
    • brew doctor。 2020年には、brew link —overwrite git

    回答

    一度「brew経由で最新のgitをインストールしました(brew install git)。そうでない場合は、このワンライナーを実行します(brew doctorで提案されています)。すでにあります:

    echo "export PATH=/usr/local/bin:$PATH" >> ~/.bash_profile 

    次に、ターミナルを終了して、もう一度開きます(bashセッションを再開します)。 ZSHとBashはPATHの内容をキャッシュするため、PATHがすでに正しい場合でも、これを行う必要があります(組み込みコマンドhashのドキュメントを参照してください)。

    これで問題はすぐに解決するはずです。

    コメント

    • これは受け入れられた回答とどのように異なりますか?
    • In私の場合、’ターミナルを再起動する必要があることを知りませんでした。そのため、一部の人に役立つ可能性があります。ライナーが1つあるため、受け入れられているよりも高速です。 ‘が競争の場合、私の答えは見当違いだと思います。そうでなければ私はそれが貢献すると思います。 (これの代わりに編集を行いたい場合は教えてください。)
    • Homebrewをインストールするときにその1つのライナーを実行します
    • この回答は役に立ちました。ターミナルの再起動は、.bash_profileの動作に慣れていない多くの人にとっては明らかではない問題であり、他の人にとっては穏やかな注意です。
    • @JuanDiegoGonzalesすばらしい観察です! gitをインストールした後、まったく同じことを考えていましたが、’理由がわかりませんでした。 cache のヒントの後、もう少し調査を行いました: unix.stackexchange.com/q/5609/52921

    回答

    これを試しましたが、うまくいきました。

    brew link --overwrite git 

    コメント

    • Mojave(10.14.4)で私のために働いた

    回答

    Terminal.appまたはコンソールに

    git --version 

    と入力すると、別の質問へのコメントでバージョンが示されました戻り値は/ usr / bin / gitのgitです

    Xcode 4.5(およびそれ以降)をインストールした場合は、

    xcrun git --version 

    inと入力します。 Terminal.appまたはコンソール。返されるバージョンはXcodeアプリバンドルのgitです。

    Homebrewを使用してgitをインストールおよび更新する場合、最も簡単な解決策は

      管理者のパスワードの入力を求められるので、管理者権限があることを確認してください

    1. mvを使用して名前を変更し、元の場所の名前を変更します。たとえば、

      sudo mv / usr / bin / git / usr / bin / git-ORIGINAL

    2. 「ln-s」を使用して、Homebrewでインストールしたgitバイナリへのソフトリンクを作成します。

    MattDMoのコメントにはより良い解決策があることに注意してください。

    コメント

    • これは100%安全ですか? Macに関連するものはすべて壊れますか?
    • 概説されている手順に従うと、それらのgit実行可能ファイルは削除されないため、ソリューションはプリインストールされているものを壊しません’。これが、ステップ2で元の/ usr / bin / gitの名前をたとえば次のように変更する必要がある理由です。 as /usr/bin/git.BACKUP
    • これを行わないでください’-本当にすべきではありません’ t ‘他のプログラムが’していない可能性があるため、/usr/binをいじってください。特定のバージョンに関連する気まぐれに依存することさえ知っています。何も移動せずに行う最も簡単な解決策は、/usr/local/binを環境変数の/usr/bin -IIRC、自作は/usr/local/bin
    • にインストールします

    • @MattDMoに感謝します。この場合はこれが最善のアプローチのようです。

    回答

    brewでgitをインストールし、これを実行します。

    brew link --force git

    ターミナルを閉じてから再度開いてwhich gitを実行します。

    コメント

    • デフォルトのパスはどのように変更されますか?
    • これは、xcode ‘ sgitをオーバーライドするために機能しました。
    • 実行中にエラーが発生しましたこれですが、brew link --overwrite gitは機能しました

    回答

    名前を変更する必要があります/usr/bin/のappleによる元のgitからe。 g。 /usr/binは通常、醸造物があるパスディレクトリの/usr/local/binの前にあるため、git-orgです。

    つまり:

    cd /usr/bin sudo mv git git-org 

    そしてbrewgitをリンクすることを忘れないでください

    brew link git 

    これは、 /usr/local/bin$PATH環境変数にあります。それでも問題が解決しない場合は、

    brew doctor 

    を実行して、そこに記載されている問題を修正してください。

    コメント

    • / usr / bin内の名前を変更したり変更したりしないでください。Appleの泥棒を壊す可能性があり、システムまたはXCodeの更新を行うと変更されます。設計されたパスを使用します。
    • @ポイントがあることをマークします。しかし、/ usr / binのgitだけを変更しても、問題が発生することはないと思います。私にとっては数か月間機能しています。
    • 通常/ usr / binの内容を変更することは悪いニュースであることに同意しますが、’ OSを思い出せません。 Xは実際にgitを使用しているため、害はごくわずかであり、レシートに一致する” clean “システムにのみ関連している可能性があります。害は、OS Xを更新すると、新しいgitが古いバージョンに置き換えられる可能性があるため、システムパスの場所の外に新しいバイナリを見つける通常の方法です。
    • 追加する方がはるかに簡単だと思います。 /usr/local/bin(homebrew ‘のインストールディレクトリ、IIRC)を$PATHの前に/usr/bin名前の変更やバックアップなどをいじくり回す代わりに、

    回答

    git-scm.comから直接gitをインストールしていて、Apple(古い)バージョンのgitではなく最新のダウンロードされたgitを使用したい場合。

    1. git-scmからgitをインストールします。 .com
    2. おそらく新しいgitが/usr/local/bin/git
    3. git --versionにインストールされます。 Appleの古いバージョンのgitが返される場合は、以下に進んでください
    4. cd ~(ディレクトリをホームディレクトリに変更します)
    5. type vi .bashrc
    6. i(viエディターにテキストを挿入するため)
    7. export PATH.......の行が見つかった場合は、エクスポートの上でEnterキーを押して次のように入力します:export PATH=/usr/local/:$PATHPATH変数で細心の注意を払ってください。混乱しないでください。そうしないと、OSに問題が発生します)(うまくいけば新しいgitは/usr/local/git
    8. escを押します
    9. :wqと入力します( .bashrcファイルを保存します)
    10. ターミナルを終了し、新しいターミナルを起動します
    11. ここで、git --version(新しいバージョンが表示されるはずです)

    回答

    パスが変更されないように、単純なエイリアスを作成します。

    alias git=/usr/local/bin/git 

    回答

    「この投稿すべてを含む多くのことを試しました」 sの答え。最後に、Xcodeの追加のツールフォルダを削除するだけで、Xcodeの代わりにbrewのバージョンのgitを実行することができました:

    sudo rm -rf /Library/Developer/CommandLineTools

    回答

    インストールにbrew install gitを使用する場合は、

    の下:

     ==> Summary 🍺 /usr/local/Cellar/git/2.29.2: 1,480 files, 39.7MB  

    また、ログの前半に表示され、おそらく見逃したエラーが発生します:

     ==> Downloading https://homebrew.bintray.com/bottles/git-2.29.2.big_sur.bottle.t Already downloaded: /Users/chadjinik/Library/Caches/Homebrew/downloads/08165d120fcebc7823c487a6778b2ea0e67fd2cd9177d6e7d656268f474ab5da--git-2.29.2.big_sur.bottle.tar.gz ==> Pouring git-2.29.2.big_sur.bottle.tar.gz Error: The `brew link` step did not complete successfully The formula built, but is not symlinked into /usr/local Could not symlink bin/git Target /usr/local/bin/git already exists. You may want to remove it: rm "/usr/local/bin/git" To force the link and overwrite all conflicting files: brew link --overwrite git  

    実行するだけです:

     brew link --overwrite git  

    これで問題ありません。

    回答

    gitの出所によって異なります。たとえば、Xcodeはバージョンを提供します。たとえば、それが前もって行われている可能性があります。

    多分入力

    which git 

    古いものがどこにあるかを示します。

    コメント

    • ‘の/usr/bin/git
    • 2つのインストールのようです。通常の(ダウンロード可能な)gitバージョンは/ usr / local / git / …に移動すると思います。’次に、パスに追加するか、他のバージョンを削除するか(または両方)

    コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です