前言
作为一名开发者,我相信你对开发环境的配置并不陌生,无论你是 J2EE、 Android 还是 iOS 开发者,拿到新电脑后第一件事情也就是去配置开发环境。如果你是一名开发老司机,你可能会熟练的配置好开发环境并迅速的就能进行开发,但对于 freshman 来说这个过程就有点漫长或者说是相当痛苦的。我们都是比较懒的,这么繁杂的配置,我们为什么不可以用一个脚本让他自动执行呢?
正文
作为Mac 上有很多激动人心的工具,我们会时常去收集,并在不断的尝试去更新自己的开发工具库。如果你不是独立开发者,那么也就意味着你有一个团队,为了协同工作,我们通常也会在团队中形成一套统一的开发工具集。因此我们可以在 git 上创建一个工程去管理我们的开发环境。那么就让我们简单的来完成一个这样的项目吧。做为 iOS 开发者,去 App store 下载并安装 Xcode,这一步不可避免👻,紧接着,安装 Xcode command line tools,运行:
|
|
这一步将完成 Xcode command line tools 的安装。本工程主要通过 fabric + shell 实现脚本自动化,所以我们还需安装 fabic 环境:
|
|
根据这行命令的的指引,我们将成功安装 Fabric。看到这里,也许你会问,Fabric 是嘛玩意,对我们有什么帮助?
Fabric
作为Fabirc 是基于 python 实现的 SSH 命令行工具, 在自动化部署领域有着非常广泛的应用。
那么怎么使用呢?在默认情况下使用 Fabric 我们需要在跟目录下创建 fabfile.py 入口文件,然后我们就可以在这个文件里进行脚本编写了。在文件开头我们首先导入我们所需要使用的 Fabric 库:
|
|
这里我们队 Fabric 导入的接口进行简要的说明:
api | 说明 |
---|---|
colors | 需要的颜色选定 |
local | 配合 Shell 执行本地命令 |
env | fabfile 的全局参数定义 |
puts | 打印相当于 Swift 中的 print 函数 |
task | 被 @task 修饰的函数可以用 fab command 调用 |
了解 Fabric 后我们来做一个 help 命令:
|
|
接下来我们来看看这个 help 命令的运行效果:
这是一个好的开始。
softwares
作为我们知道 fabric + shell 的简单使用可以实现一个自动化脚本,那么我们到底要用这个脚本安装哪些 software 呢?其实这个是因人而异的,这里我简单罗列一下我所使用的一些工具,您如果有更好的工具,请推荐给我:
- Homebrew
作为主流的 Linux 都有包管理器, Red hat 有 yum,Ubuntu 有 apt-get,但不好意思,Mac OS 没有这玩意,Homebrew —— Mac OS 缺失的软件包管理器,那么它 能干什么呢? 当然是管理 Mac OS 上的软件包。比如说我想安装 wget :
|
|
想卸载:
|
|
我们可以看到有了 Homebrew ,我们可以轻松的管理这些软件包。
- Oh My ZSH
其实 OS X 默认的 bash 已经非常强大了,但是你绝不会拒绝更优秀的 ZSH 。关于为什么使用 ZSH ,请移步 使用zsh的十大优点 。由于 ZSH 的配置实在太复杂了,于是就出现了 Oh My ZSH , 有了它,我们可以轻松的配置我们的 zsh 了:
|
|
- CocoaPods
CocoaPods ,对于大家来说,我想并不陌生,它经常能帮助你快速的管理你的三方开源库,包括install
、update
等操作。 因此 CocoaPods 也是我们开发中必不可少的一个工具:
|
|
……
常用的软件,我想我就不一一列举了,大家都有自己的习惯,和常用的软件。
脚本化
我们定义一个 install
函数,并将我们所要安装的软件通过脚本来顺序安装 ,并用 @task
标记:
|
|
如上代码,会逐行执行,等这段脚本执行完,这些软件也就安装好了。
同理,我们还可以定义一个用于软件更新的函数 update
:
|
|
这样,我们就可以通过脚本定期更新我们的软件了。