近期新购入了一款 Mac,趁此机会重装了一遍所有软件,记录一下程序员必备软件合集,方便下次换机或新同事参考。
一、环境与包管理(安装顺序建议)
1. Homebrew
Mac 的包管理器,建议最先安装,后续很多软件可通过它一键安装。
bash
# 安装(官方一键脚本)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 安装后按提示把 brew 加入 PATH(Apple Silicon 常见路径)
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile && eval "$(/opt/homebrew/bin/brew shellenv)"
常用技巧:
brew install <包名>:安装软件brew upgrade:升级所有已安装包brew search <关键词>:搜索可用包brew list:查看已安装列表brew cleanup:清理旧版本缓存brew cask install <应用>:安装图形界面应用(如 Chrome、Cursor)
2. nvm(Node 版本管理)
多项目可能依赖不同 Node 版本,用 nvm 切换很方便。
bash
# 使用 Homebrew 安装
brew install nvm
# 在 ~/.zshrc 中加入(如用 Oh My Zsh 则编辑该文件)
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm"
# 然后执行 source ~/.zshrc
常用技巧:
-
nvm install 20:安装 Node 20 最新版 -
nvm use 18:当前终端切换到 Node 18 -
nvm alias default 20:默认使用 Node 20 -
nvm ls:查看已安装版本 -
项目根目录放
.nvmrc写版本号(如20),在目录下执行nvm use即可自动切换 -
技巧2
在.nvmrc 中写入当前支持的node版本号
node -v > .nvmrc
ruby
autoload -U add-zsh-hook
load-nvmrc() {
local nvmrc_path
nvmrc_path="$(nvm_find_nvmrc)"
if [ -n "$nvmrc_path" ]; then
local nvmrc_node_version
nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")")
if [ "$nvmrc_node_version" = "N/A" ]; then
nvm install
elif [ "$nvmrc_node_version" != "$(nvm version)" ]; then
nvm use
fi
elif [ "$(nvm version)" != "$(nvm version default)" ]; then
# 离开有 .nvmrc 的目录,切回默认版本
echo "Reverting to nvm default version"
nvm use default
fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc
即可实现切换到当前文件自动切换到对应的node版本
3. pnpm
比 npm 更快、省磁盘,适合 Monorepo 和前端项目。
bash
# 安装(建议在配置好 nvm 后执行,全局安装到当前 Node)
npm install -g pnpm
# 或使用 Homebrew
brew install pnpm
常用技巧:
pnpm install:安装依赖(会严格按 workspace 和 lockfile)pnpm add <包名>/pnpm add -D <包名>:添加依赖 / 开发依赖pnpm run <script>或pnpm <script>:运行 package.json 里脚本pnpm store path:查看全局 store 目录;pnpm store prune:清理未引用包- 在项目里用
pnpm前可先corepack enable再corepack prepare pnpm@latest --activate,便于团队统一 pnpm 版本
4. rvm + CocoaPods
iOS/macOS 开发常用 Ruby 环境管理 + 依赖管理。
bash
# 安装 rvm
curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
# 安装 Ruby(建议 3.x,与 CocoaPods 兼容好)
rvm install 3.2.0
rvm use 3.2.0 --default
# 安装 CocoaPods
sudo gem install cocoapods -n /usr/local/bin
常用技巧:
- rvm
rvm list:已安装 Ruby 列表rvm use 3.2.0:切换版本- 项目目录放
.ruby-version可自动切换
- CocoaPods
pod init:在 Xcode 工程目录下初始化 Podfilepod install:安装/更新依赖(之后用.xcworkspace打开工程)pod update <库名>:更新指定库pod repo update:更新 CocoaPods 官方 spec 仓库(卡住时常用)- 国内镜像若慢,可在 Podfile 顶部指定 source,或使用 CDN 源
二、必备软件列表
| 类型 | 软件 | 说明 |
|---|---|---|
| 浏览器 | Chrome | 开发、调试、日常 |
| 终端 | iTerm2 + Oh My Zsh | 更好用的终端与 shell 配置 |
| 抓包/调试 | Proxyman | macOS 抓包、证书、代理 |
| 开发 | Xcode | iOS/macOS 开发必备 |
| 编辑器 | Cursor | AI 辅助编码 |
| 系统监控 | iStat Menus | 菜单栏 CPU/内存/网速等 |
| 数据库 | TablePlus | 多数据库客户端 |
| 截图 | iShot | 截图、标注、录屏 |
| 远程 | Termius | SSH 等远程连接 |
| JSON | OK JSON | JSON 查看工具 |
三、Cursor 已安装插件
当前 Cursor 中已安装的扩展(便于换机或重装时恢复):
| 扩展 ID | 说明 |
|---|---|
bradlc.vscode-tailwindcss |
Tailwind CSS IntelliSense(类名补全、预览) |
christian-kohler.npm-intellisense |
npm 包名/版本补全 |
christian-kohler.path-intellisense |
路径补全(import、src 等) |
dbaeumer.vscode-eslint |
ESLint 代码检查 |
dsznajder.es7-react-js-snippets |
ES7+ React/Redux 代码片段 |
eamodio.gitlens |
Git 增强(行历史、blame、对比等) |
esbenp.prettier-vscode |
Prettier 格式化 |
formulahendry.auto-rename-tag |
自动重命名配对的 HTML/JSX 标签 |
ms-ceintl.vscode-language-pack-zh-hans |
中文(简体)语言包 |
pkief.material-icon-theme |
Material 风格文件/文件夹图标 |
ritwickdey.liveserver |
本地 Live Server 前端预览 |
steoates.autoimport |
自动补全并插入 import |
stylelint.vscode-stylelint |
CSS/SCSS/Less 的 Stylelint 检查 |
tomi.xasnippets |
Xcode 风格代码片段(iOS 开发) |
usernamehw.errorlens |
行内显示错误/警告(Error Lens) |
wallabyjs.console-ninja |
Console Ninja(控制台日志增强) |
yzhang.markdown-all-in-one |
Markdown 编辑与预览增强 |
一键安装(在 Cursor 终端执行):
bash
cursor --install-extension bradlc.vscode-tailwindcss
cursor --install-extension christian-kohler.npm-intellisense
cursor --install-extension christian-kohler.path-intellisense
cursor --install-extension dbaeumer.vscode-eslint
cursor --install-extension dsznajder.es7-react-js-snippets
cursor --install-extension eamodio.gitlens
cursor --install-extension esbenp.prettier-vscode
cursor --install-extension formulahendry.auto-rename-tag
cursor --install-extension ms-ceintl.vscode-language-pack-zh-hans
cursor --install-extension pkief.material-icon-theme
cursor --install-extension ritwickdey.liveserver
cursor --install-extension steoates.autoimport
cursor --install-extension stylelint.vscode-stylelint
cursor --install-extension tomi.xasnippets
cursor --install-extension usernamehw.errorlens
cursor --install-extension wallabyjs.console-ninja
cursor --install-extension yzhang.markdown-all-in-one
四、后续可补充
- 各软件的偏好设置或快捷键
- 常用 Xcode 配置(证书、模拟器、Build Settings 等)
- 团队统一的
.nvmrc、.ruby-version、编辑器推荐插件配置(如放入仓库.vscode/extensions.json)