macOS 系列之 Mac 开发环境配置
# macOS 系列之 Mac 开发环境配置
# 📖. 前言
最近在写《程序员的macOS系列》文章
之前写的第一篇 程序员的macOS系列:精选Mac App,大家都希望楼主尽快更新,那么今天就继续更新啦!
其实 macOS 开发环境,系统默认自带 ruby、php、python2、gcc、g++、bash 等环境,并且因为 macOS
是以 Unix
为基础,所以有传统 Unix / Linux
的特性,很适合高效少折腾的开发者。
所以,本文主要讲解一些通用开发环境配置,主要是以必须和提高效率为主!也没有什么高深介绍,当然,由于楼主目前主职是前端,所以其它的开发环境接触不多(谦虚),当前大家要学以至用,环境搭建都是相似的,熟悉了就不是问题。
文章短短不可能详尽也,要学好每一个点也不是那么简单,惟有抛砖引玉,希望大家努力提高!
# 一. 开发环境配置
需要提前说明一下,本文不使用代理源,如果命令无效,大家记得翻墙一下啊。本教程尽量都通过命令行方式完成配置,命令行依然是程序员最高效的环境!如果是通过软件包安装的方式,就不在这里列举了,比如 Java
的安装可以自行搜索~
# 1. 命令行工具(COMMAND LINE TOOLS)
如果不是开发 iOS
或 macOS
可能就没有必要安装 Xcode
,但是可能需要安装一下 Xcode
命令行工具,因为很多环境和软件都会使用和依赖它(下面说到的 Carthage
、python3
就依赖它)。
xcode-select --install
xcode-select
这个命令还可以切换 Xcode build 的版本(目录),可以用 xcode-select --help
查看更多帮助。
这里提醒一下新手,终端的命令,如果记得命令名字,不记得用法,可以使用:
xxx --help
也可以用:
man xxx
--help
和 man
命令的区别,是 man
命令是详细全面的介绍。
另外,可以用 which
命令查看命令的路径目录,比如终端输入:
which mysql
就会打印出 mysql
这个命令的所在目录:
/usr/local/mysql/bin/mysql
# 2. HOMEBREW
Homebrew
是强大的终端工具,用来管理很多在终端下操作的程序以及软件包的依赖,对于经常需要使用终端应用的程序员来说,是必不可少的第一步!
打开终端,安装命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
上面命令,我希望大家不只是复制粘贴运行就完事,更希望大家能了解更多:
/usr/bin/ruby -e
:使用 ruby 环境运行curl -fsSL
:使用 curl 命令下载
了解了这 2 点,那么 ruby
环境、curl
命令和参数的作用,相信大家就可以自行搜索深入学习,而不是片面过一次 复制粘贴运行
,达到学以致用,这才是真学习!
brew
一些常用命令:
brew search # 搜索包
brew info
brew install
brew remove # 删除包
brew update # 更新 Homebrew
brew outdated # 查看是否需要更新包
brew upgrade # 更新包
2
3
4
5
6
7
brew doctor
命令可以检查 brew 运行是否正常,xxx doctor 很多命令工具都有,用来帮助小白新手检查和解决命令环境无法正常使用时的错误提示和指导。
brew
命令就不多说了,类似 linux 系统下的 apt-get
,程序员都要从入门到精通啊~
如果安装出现443报错,请看 Mac安装brew(最新教程,绝对可行,一行代码搞定,不报错)。
# (1). Homebrew Cask
使用 Homebrew 可以非常方便的安装命令行程序,而通过 Homebrew Cask 则可以优雅、简单、快速的安装和管理 macOS 图形界面(GUI)程序(.dmg/.pkg),比如 Google Chrome 、Atom 和 Sublime Text 等。
安装 macOS 图形界面程序:
brew cask install google-chrome
brew cask install sublime-text
2
到底有多方便,看下面这个官方的示例图就明白:
Homebrew Cask 先下载软件后解压到统一的目录中(/opt/homebrew-cask/Caskroom
),然后再软链到 ~/Applications/
目录下,省掉了自己下载、解压、拖拽安装等步骤,同样的,卸载相当简单和干净,一句命令就可以完成。
更新 Homebrew Cask 命令:
brew update && brew upgrade brew-cask && brew cleanup
HomeBrew Cask 没有更新软件的命令,所以如果要更新软件得先卸载再安装:
brew cask uninstall APP && brew cask install APP
# 3. BASH(ZSH)
zsh 是一种 shell
语言,兼容 bash
,提供强大的命令行功能,比如 tab 补全,自动纠错功能等。
安装 zsh
:
brew install zsh
使用 oh-my-zsh
可以将 zsh 变得更加强大而灵巧:
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
另外可以安装 oh-my-zsh 一些插件,比如实现自动跳转: autojump (opens new window) 、 fasd (opens new window) 、命令行自动提示 zsh-autosuggestions (opens new window)。
个性化配置,包括别名,都在目录 ~/.zshrc
下,需要深入教程的大家自动网上搜索啊。这里只是配置入门,修行还是看个人啊!
创建别名的示例:
vim ~/.zshrc // vim 命令下面会说到
alias myblog='cd /Users/HTC/Documents/iHTCBlog' //快速到达指定目录
alias st='open -a "Sublime Text"' //打开某个app
2
3
# 4. NODE / NPM
Node(Node.js)
是一个基于 Chrome V8 引擎、能够在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。Node.js
使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。
brew install node
Node.js
与 npm
捆绑在一起,因此它会与 npm
一起安装。npm
即 node package manager,用来搜索、下载、管理 Node.js 相关的套件。
注:npm 是 JavaScript 的程序包管理器。它是 JavaScript 运行时环境 Node.js 的默认包管理器。
npm
一些常用命令:
npm help # 查看npm帮助
npm find # 查找组件
npm install # 安装组件
npm remove # 删除组件
npm update # 更新组件
2
3
4
5
Node
除了用于前端/后台开发外,react native
、Hexo
博客也是依赖 Node
环境,更多的 Node
知识,我也还在努力学习中,后续有新认识,再回来更新啊!就不误人子弟啦~
# 5. VI(vim)
vi
是 visual interface
的缩写,vim
是 vi IMproved
(增强版的 vi)。vi(vim) 命令繁多,但是如果灵活使用之后将会大大提高效率!从此不用鼠标不是梦!
vi(vim)是 Unix/Linux 终端自带的,所以 macOS 也自带。那么 vi(vim) 要配置什么呢?
就是大家觉得 vi(vim) 好用,但是,还认为可以更好用。所以,有很多的插件(用更少的按键,实现更多更合理的功能),例如实现文件浏览( NERD Tree (opens new window) ), 代码补全( YouCompleteMe (opens new window) ),语法检查( syntastic (opens new window) ), 文件模糊搜索( ctrlp (opens new window) ),显示vim状态栏( Vim Powerline (opens new window) ), 主题颜色( Molokai (opens new window) ),显示文件结构( tagbar (opens new window) )等多种功能
vi(vim) 操作的快捷键教程可以参考楼主之前的文章: vi(vim)快捷键小记 (opens new window)
vim 设置编辑文本语法高亮:
vim ~/.vimrc
syntax on
2
3
更多vi的知识,大家自行搜索学习啊~
# 6. GIT
git
的作用就不多说了,如果是刚毕业的新手入门,建议自行学习,对你的开发帮助一定非常大~
另外,如果安装了Xcode,默认会安装 git
,如果没有安装 Xcode,可以自己安装:
git
安装:
brew install git
git
基本配置:
git config --global user.name "iHTCboy"
git config --global user.email "ihetiancong@gmail.com"
git config --global color.ui true
git config --global alias.co checkout # 别名
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
git config --global core.editor "vim" # 设置Editor使用vim
git config --global core.quotepath false # 设置显示中文文件名
2
3
4
5
6
7
8
9
用户的 git 配置文件目录: ~/.gitconfig
- tig (opens new window) 高亮美化, 让 git 命令行可视化
git
更多命令教程,大家自行搜索,如果要达到熟悉,还是要多实践练习啊~ 当然,原理也是必不可少的一步!
# 7. PYTHON3
python3 是未来,所以还是要安装使用和开发的!
brew install python3
查看 python3
的版本:
python3 --version
python
能做的事件就不多说了,人工智能,机器学习,大数据分析,爬虫,web,可以说 python
已经渗透到各个地方~
# 8. MYSQL
安装:
brew install mysql
启动守护程序:
brew services start mysql
# 二. 其他环境配置和插件
# 1. FINDER(访达)预览插件
用于 Finder
快速显示文件的内容,这个 GitHub 专门收集了特别的 Finder
插件:https://github.com/sindresorhus/quick-look-plugins (opens new window)
安装命令:
brew cask install qlcolorcode qlstephen qlmarkdown quicklook-json qlimagesize webpquicklook suspicious-package quicklookase qlvideo provisionql quicklookapk
其中特别的插件说明,详细看 quick-look-plugins (opens new window) :
- qlcolorcode: 代码文件预览时高亮
- qlstephen: 以纯文本的形式预览无拓展名或者未知拓展名的文件
- qlmarkdown: 预览渲染后的 markdown 文件
- quicklook-json: 预览格式化后的 json 文件
- ProvisionQL: ipa文件信息展示
- QuickLookAPK:apk文件信息展示
# 三. 总结
macOS的开发环境大概就讲到这些,如果大家还有不清楚的,网上搜索已经一大片,这里只是总结和归纳一下,让大家有一个系统性的了解和学习,只有大家系统性的全面了解,才能深入每一个知识点学习。 这也是本文的目的,授于鱼,不如授于渔,希望大家努力学习~
# 🌟. 参考
- 程序员的macOS系列:精选Mac App (opens new window)
- npm (opens new window)
- The missing package manager for macOS — The missing package manager for macOS (opens new window)
- vi(vim)快捷键小记 | iHTCboy’s blog (opens new window)
- Vim配置、插件和使用技巧 - 简书 (opens new window)
- Hexo搭建Github Pages博客填坑教程 | iHTCboy’s blog (opens new window)
- 让你的iTerm更Geek! | iHTCboy’s blog (opens new window)
- Git常用命令备忘 - stormzhang (opens new window)
- EffectiveMac - bestswifter (opens new window)
- Oh My Zsh - a delightful & open source framework for Z-Shell (opens new window)
- zsh | 程序员的自我修养 (opens new window)
- tig (opens new window)
- ccat (opens new window)
- sindresorhus/quick-look-plugins: List of useful Quick Look plugins for developers (opens new window)
- CocoaPods.org (opens new window)
- Carthage/Carthage: A simple, decentralized dependency manager for Cocoa (opens new window)
- Carthage 包管理工具,另一种敏捷轻快的 iOS & MAC 开发体验 - SwiftCafe 享受代码的乐趣 (opens new window)
- Apple - Safari - Safari Extensions Gallery (opens new window)
- About GitHub Packages - GitHub Help (opens new window)
- Homebrew - Mac 开发配置手册 - 极客学院Wiki (opens new window)
- Homebrew/homebrew-cask: 🍻 A CLI workflow for the administration of macOS applications distributed as binaries (opens new window)