homebrew的tap功能詳解


Homebrew是使用ruby開發的Mac的軟件包管理器.
這裏就說明一下有關Taps(third-party-repositories)的知識php


brew tap能夠爲brew的軟件的 跟蹤,更新,安裝添加更多的的tap formulaenginx

若是你在覈心倉庫沒有找到你須要的軟件,那麼你就須要安裝第三方的倉庫去安裝你須要的軟件git

tap命令的倉庫源默認來至於Github,可是這個命令也不限制於這一個地方github

brew tap 命令

  • brew tap 沒有參數會自動更新已經存在的tap並列出當前已經tapped的倉庫

圖片描述
圖片描述

  • brew tap <user>/<repo> 在本地對這個 https://github.com/user/repo 倉庫上作了一個淺度的克隆,完成以後 brew就能夠在這個倉庫包含的formulae上工做,比如就在Homebrew規範的倉庫,你可以使用brew install 或者brew uninstall 安裝或者卸載這個倉庫上的軟件。當你執行brew update這個命令時,tapformulae 就會自定更新

圖片描述

  • brew tap <user>/<repo> URL 在本地對這個 URL 倉庫上作了一個淺度的克隆,和上面一個參數命令是不同的,URL沒有默認關聯到Github,這個URL沒有要求必須是HTTP協議,任何位置和任何協議並且Git也是能很好的處理的
  • brew untap <user>/<repo> [<user>/<repo> <user>/<repo> ...] 移除已經安裝的tap.這個倉庫被刪除,brew就不在可用在這個倉庫的formulae.能夠同時刪除幾個倉庫

倉庫命名的規範

  • Github上,你的倉庫名稱必須是homebrew-something,爲了使用一個參數的brew tap命令,homebrew-這個前綴不是可選的,是必須的。
    對於兩個參數的brew tap命令沒有這個限制,可是必須給出明確的所有的URL地址
  • 當你在命令行使用brew tap時,你能夠省略homebrew-這個前綴的

也就是說:brew tap username/foobar是做爲長版本brew tap username/homebrew-foobar使用的一個簡寫.sql

brew能夠本身添加homebrew-前綴的在須要的時候編程

重複名稱安裝包的處理

若是你想安裝的一個安裝包在你tap的一個倉庫上,可是同時還出如今了homebrew/core上,這就意味着你必須明確指出tap的名稱去安裝它,不然就會默認安裝homebrew/core上的包.vim

若是你想要是你安裝的tap的優先順序高於homebrew/core這個默認的倉庫,你可使用brew tap-pin username/repopin這個倉庫.你可使用brew-tap-unpin username/repo 恢復這個pinruby

當你使用brew install foo這個命令時,brew 將按照下面的順序去查找哪一個formula(tap)將被使用:app

  1. pinned taps
  2. core formulae
  3. other taps

舉個例子:工具

你想安裝vim安裝包,並且沒有pinned某個倉庫:

brew install vim  # installs from homebrew/core
brew install username/repo/vim  # installs from your custom repo

你想安裝vim安裝包,並且有pinned的倉庫:

brew install vim  # installs from your custom repo
brew install homebrew/core/vim # installs from homebrew/core

能夠關注的Taps

圖片描述

掃描關注,查看更多文章,提升編程能力

相關文章
相關標籤/搜索