Mac上使用Brew 进行PHP多版本管理

http://yansu.org/2014/09/26/use-old-version-of-brew-php.html

版本切换方式

通过brew安装的php可以通过brew linkbrew unlink来切换不同版本。

例如

brew list
brew unlink php56
brew link php55

大版本可以用brew list来查,如果是小版本的话只能去/usr/local/Cellar/php55看了。这个时候使用php-version可以更方便一点。

我测试的此方法不行,只能使用php-verson 进行切换。

安装php-version

php-version是一个帮助管理从brew安装的php版本切换的工具。

安装非常简单

brew install php-version

然后执行

source $(brew --prefix php-version)/php-version.sh

使用php-version

直接执行

php-version

就可以看到现有的版本,比如我自己的

$ php-version
  5.5.15
* 5.5.16
  5.5.17

然后使用以下命令切换即可

php-version 5.5.15

再看php的版本,已经切换好了。

对于从默认mac自带的版本切换到新版本很方便,如

brew install php70 #最新版本php7.0.7
php-version 7.0.7

HomeBrew中国镜像源

Mac 终端跑入即可

cd /usr/local/
git remote set-url origin http://mirrors.ustc.edu.cn/homebrew.git
#或者这个:
git remote set-url origin git://mirrors.tuna.tsinghua.edu.cn/homebrew.git
brew update

如果还是感觉慢,看看这个:https://mirrors.tuna.tsinghua.edu.cn/help/homebrew/

cd ~/tmp
git clone git://mirrors.tuna.tsinghua.edu.cn/homebrew.git
rm -rf /usr/local/.git
rm -rf /usr/local/Library
cp -R homebrew/.git /usr/local/
cp -R homebrew/Library /usr/local/

然后重试update。

使用homebrew-science或者homebrew-python

cd /usr/local/Library/Taps/homebrew/homebrew-science
git remote set-url origin git://mirrors.tuna.tsinghua.edu.cn/homebrew-science.git

cd /usr/local/Library/Taps/homebrew/homebrew-python
git remote set-url origin git://mirrors.tuna.tsinghua.edu.cn/homebrew-python.git

brew update

也可以使用coding.net提供的镜像

$ cd /usr/local && git remote set-url origin https://git.coding.net/homebrew/homebrew.git

$ brew update

brew常用命令

由于国内一环境,速度非常的慢,推荐使用HomeBrew的中国镜像http://blog.haohtml.com/archives/16915

  1. 安装(需要 Ruby):
    ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
  2. 搜索:brew search mysql
  3. 查询:brew info mysql 主要看具体的信息,比如目前的版本,依赖,安装后注意事项等
  4. 更新:brew update 这会更新 Homebrew 自己,并且使得接下来的两个操作有意义
  5. 检查新版本:brew outdated 这回列出所有安装的软件里可以升级的那些
  6. 升级:brew upgrade 升级所有可以升级的软件们
  7. 清理:brew cleanup 清理不需要的版本以及安装包缓存

常用的就这些。

一般在软件前,需要先更新Homebrew,然后再升级所有软件或者指定软件。

brew update          # 更新 Homebrew 的信息
brew outdated        # 看一下哪些软件可以升级
brew upgrade <package>    # 升级指定的软件
brew upgrade    #升级所有安装过的软件
brew cleanup    # 清理掉升级后无用的老版本软件,以腾出磁盘空间

另外记得定时执行 brew cleanup命令,清查过旧的软件包。

brew tap介绍

官方介绍:https://github.com/Homebrew/homebrew/wiki/brew-tap

brew 有个默认的仓库,brew tap 你可以看成是第三方的仓库。
这个相信很多人都已经用到过了,安装他人扩展的 brew 服务。由于 brew 和包含的包源都是通过 github 来管理,人为的维护管理,除了自己的源还允许别人的源添加进来。类似与 Ubuntu 的 ppa。好处在于只有我安装规定的方式把包丢到 github 上面就可以用了!

$ brew tap <gihhub_user/repo>

这个命令并没有包含任何的帮助说明,其实它只接受上面的这个参数。

举例说明一下,Mac OS 比较歧视 PHP ,所以每次系统更新都会把常用的开发包(Ruby、Python 等)也顺带着更新到最新版本。(吐槽:Java 都已经被抛弃不再默认安装了),而 brew 居然也不包含 PHP 的包,那怎么办呢?

$ brew tap josegonzalez/php

命令完成之后,执行(当前最新是 php 5.5 版本,请根据需要替换)

$ brew install php55

当我们没有传递任何参数,默认显示已经通过 tap 安装了哪些扩展,为什么我说是通过 tap 呢,因为 brew 其实除了这些自身也用了一些其他扩展,通过下面命令显示:

$ brew ls-taps

 

使用brew cask来安装Mac应用

简介

brew cask 是一个用命令行管理 Mac 下应用的工具,它是基于 homebrew 的一个增强工具。

homebrew可以管理 Mac 下的命令行工具,例如imagemagick, nodejs,如下所示:

brew cask install qq
brew cask install google-chrome
brew cask install evernote

而使用上brew cask之后,你还可以用它来管理 Mac 下的 Gui 程序,例如qq, chrome, evernote等,如下所示:

brew cask install qq
brew cask install google-chrome
brew cask install evernote

安装

安装 homebrew

用以下一行命令即可安装 homebrew

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

之后执行 brew doctor 命令可以看看homebrew的环境是否正常。通常第一次安装完 brew 之后,还需要安装苹果的Command Line ToolsContinue reading