当前位置: 首页 > news >正文

Mac M4 开发环境配置:一套 .zshrc 配置,让开发效率翻倍

上一篇《MacOS(M 芯片) Java 环境搭建指南,新手也能直接复制执行》讲了如何用 SDKMAN + Homebrew 搭建 Java 基础环境。这次分享我的 .zshrc 配置,一套让日常开发效率翻倍的命令快捷方式。

前言:为什么要专门写 .zshrc 配置?

换了 M4 MacBook Air(32G 内存),从 Windows 转到 macOS。Java + Node + Vue + React + TypeScript 全栈开发,基础环境搭好后,我发现每天都要重复输入很多命令:

gitstatusgitadd.gitcommit -m"xxx"gitpush mvn -T 1C spring-boot:runpnpmdev

这些命令每天都在重复,为什么不简化成:

gs gcm"xxx"gp mvnr pd

这就是 .zshrc 配置的价值:一次配置,每天节省无数次按键。


我的配置理念

这套配置遵循三个原则:

简单

  • 不依赖复杂插件
  • 不用 Oh My Zsh 之类的框架
  • 纯别名(alias)和函数,直接易懂

高效

  • 常用命令两三个字符搞定
  • Git、Maven、前端全覆盖
  • 端口管理、代码搜索一键操作

稳定

  • 不折腾,长期可用
  • 换电脑直接复制 .zshrc
  • 升级系统不影响

完整 .zshrc 配置

打开配置文件:

vim~/.zshrc

基础增强

# =====================================# 🚀 基础增强# =====================================aliasll='ls -lah'# 详细列表alias..='cd ..'# 上一级目录alias...='cd ../..'# 上两级目录aliasc='clear'# 清屏aliasreload='source ~/.zshrc'# 重新加载配置

这些是最基础的,但每天都在用。

Git 快捷方式

# =====================================# 🌿 Git(使用 merge)# =====================================aliasgs='git status -sb'# 状态简览aliasga='git add .'# 添加所有aliasgc='git commit -m'# 提交aliasgca='git commit -am'# 添加并提交aliasgp='git push'# 推送aliasgl='git pull --no-rebase --no-edit'# 拉取(不用 rebase)aliasgco='git checkout'# 切换分支aliasgcb='git checkout -b'# 创建并切换分支aliasgb='git branch'# 查看分支aliasglog='git log --oneline --graph --decorate'# 提交图谱# 快捷提交函数gcm(){gitadd.&&gitcommit -m"$1"}

为什么不用 rebase?

团队协作用 merge 更稳定,rebase 容易出问题。如果你是个人项目,可以用 rebase。

日常使用

gs# 查看状态gcm"fix"# 添加并提交gp# 推送gl# 拉取

三四个字符完成一次 Git 提交。

前端开发

# =====================================# 🟢 Node / 前端# =====================================aliasdev='npm run dev'aliasbuild='npm run build'aliasstart='npm start'aliastest='npm test'# pnpm 快捷方式(推荐)aliaspi='pnpm install'aliaspd='pnpm dev'aliaspb='pnpm build'

为什么用 pnpm?

比 npm 快,节省磁盘空间,更适合 monorepo。

日常使用

pi# 安装依赖pd# 启动开发服务器pb# 构建

Maven(M4 32G 优化)

# =====================================# ☕ Maven(M4 32G 优化)# =====================================exportMAVEN_OPTS="-Xms1024m -Xmx4096m -XX:+UseG1GC"# 并行构建命令aliasmvnr='mvn -T 1C spring-boot:run'# 运行aliasmvnp='mvn -T 1C clean package -DskipTests'# 打包aliasmvni='mvn -T 1C clean install'# 安装

M4 性能优化说明

  • -Xms1024m -Xmx4096m:初始 1G,最大 4G 堆内存
  • -XX:+UseG1GC:使用 G1 垃圾回收器,稳定高效
  • -T 1C:每个 CPU 核心启动一个线程,并行构建

M4 至少 8 核,并行构建可以提升 2.6 倍速度。

日常使用

mvnr# 运行 Spring Bootmvnp# 打包(跳过测试)mvni# 安装到本地仓库

Docker

# =====================================# 🐳 Docker# =====================================aliasdps='docker ps'# 查看运行容器aliasdi='docker images'# 查看镜像aliasdcu='docker compose up -d'# 启动服务aliasdcd='docker compose down'# 停止服务aliasdcb='docker compose build'# 构建镜像

日常使用

dps# 看看哪些容器在运行dcu# 启动 docker-composedcd# 停止

搜索增强

# =====================================# 🔎 搜索增强# =====================================aliasgrep='grep --color=auto'# 彩色输出

ripgrep(rg)比 grep 快很多,Homebrew 已安装:

rg"UserService"# 搜索代码rg"interface"--type java# 搜索 Java 文件

端口管理

# =====================================# 🔥 端口处理# =====================================# 杀掉指定端口进程killport(){lsof-ti:$1|xargskill-9}# 查看所有监听端口aliasports='lsof -i -P | grep LISTEN'# 历史命令aliash='history'

日常使用

killport8080# 杀掉 8080 端口killport5173# 杀掉 5173 端口ports# 查看所有监听端口

再也不用记 lsof 的复杂语法了。



完整配置文件汇总

# =====================================# 🚀 基础增强# =====================================aliasll='ls -lah'alias..='cd ..'alias...='cd ../..'aliasc='clear'aliasreload='source ~/.zshrc'# =====================================# 🌿 Git(使用 merge)# =====================================aliasgs='git status -sb'aliasga='git add .'aliasgc='git commit -m'aliasgca='git commit -am'aliasgp='git push'aliasgl='git pull --no-rebase --no-edit'aliasgco='git checkout'aliasgcb='git checkout -b'aliasgb='git branch'aliasglog='git log --oneline --graph --decorate'# 快捷提交函数gcm(){gitadd.&&gitcommit -m"$1"}# =====================================# 🟢 Node / 前端# =====================================aliasdev='npm run dev'aliasbuild='npm run build'aliasstart='npm start'aliastest='npm test'# pnpm 快捷方式aliaspi='pnpm install'aliaspd='pnpm dev'aliaspb='pnpm build'# =====================================# ☕ Maven(M4 32G 优化)# =====================================exportMAVEN_OPTS="-Xms1024m -Xmx4096m -XX:+UseG1GC"# 并行构建命令aliasmvnr='mvn -T 1C spring-boot:run'aliasmvnp='mvn -T 1C clean package -DskipTests'aliasmvni='mvn -T 1C clean install'# =====================================# 🐳 Docker# =====================================aliasdps='docker ps'aliasdi='docker images'aliasdcu='docker compose up -d'aliasdcd='docker compose down'aliasdcb='docker compose build'# =====================================# 🔎 搜索增强# =====================================aliasgrep='grep --color=auto'# =====================================# 🔥 端口处理# =====================================# 杀掉指定端口进程killport(){lsof-ti:$1|xargskill-9}# 查看所有监听端口aliasports='lsof -i -P | grep LISTEN'# 历史命令aliash='history'

复制上面全部内容,粘贴到~/.zshrc文件中。


使配置生效

保存文件后,执行:

source~/.zshrc

或者直接用:

reload

日常开发使用示例

场景 1:前端开发

cd~/projects/my-vue-app pi# pnpm installpd# pnpm dev# 修改代码...c# clear 清屏

场景 2:后端开发

cd~/projects/my-spring-boot-app mvnr# mvn -T 1C spring-boot:run# 服务启动在 8080

场景 3:Git 提交

gs# git status -sbgcm"fix"# git add . && git commit -m "fix"gp# git push

场景 4:端口被占用

ports# 查看监听端口killport8080# 杀掉 8080mvnr# 重新启动

场景 5:代码搜索

rg"UserService"# 搜索所有文件rg"interface"--type java# 只搜索 Java 文件

配套工具推荐

开发环境搭好了,再推荐几个必备工具:

终端

  • Tabby:跨平台终端,美观强大
  • Ghostty:原生 macOS 终端,性能极佳

编辑器/IDE

  • IntelliJ IDEA:Java 开发
  • VS Code:前端开发

其他

  • Rectangle:窗口管理(免费替代 Magnet)
  • Raycast:Spotlight 替代,启动应用更快

与上一篇文章的关系

上一篇文章《MacOS(M 芯片) Java 环境搭建指南,新手也能直接复制执行》讲了:

  • Homebrew 安装
  • SDKMAN 安装
  • JDK 多版本管理
  • Maven 安装
  • Maven 国内镜像配置

这篇文章讲的是:

  • .zshrc 命令快捷方式
  • Git、Maven、前端开发效率提升
  • 端口管理、代码搜索
  • M4 性能优化配置

两篇文章配合使用,从 0 到完整高效开发环境。


总结

这套 .zshrc 配置的核心价值:

一次配置,每天受益

  • 每天节省无数次按键
  • 命令更简洁,思维更流畅
  • 专注开发,而不是记命令

简单稳定,长期可用

  • 不依赖复杂插件
  • 换电脑直接复制
  • 升级系统不影响

全栈覆盖,效率翻倍

  • Git、Maven、前端、Docker
  • 端口管理、代码搜索
  • M4 性能充分利用

配置完成后,你就可以专注于真正重要的事情——写代码、解决问题、创造价值。

而不是每天都在重复输入那些又长又熟的命令。


欢迎关注公众号 FishTech Notes,一起交流使用心得!

http://www.jsqmd.com/news/401842/

相关文章:

  • RAG与大模型智能客服:从零搭建高可用对话系统的实战指南
  • 大模型+RAG架构下的智能客服Agent设计:从原理到工程实践
  • 深度体验Ling Studio:万亿参数模型如何重塑AI开发工作流
  • Qwen-Image-Edit-F2P AI设计提效:营销海报/社媒配图/虚拟偶像头像生成案例
  • ChatTTS使用技巧:从零构建AI辅助开发工作流
  • 基于LangChain和RAG技术的智能客服Agent开发实战:从架构设计到性能优化
  • ChatTTS指定说话人技术解析:从原理到工程实践
  • Python基于Vue的物业管理系统 django flask pycharm
  • WPF引导定位软件-平移九点标定圆定位算法
  • Hunyuan-MT-7B实战案例:为少数民族地区中小学开发双语教学辅助工具
  • Code Whisper实战:如何通过AI辅助编程提升开发效率
  • 解决CAD安装中‘problem loading audiostream resource file‘错误的完整指南
  • 做程序自动把食物照片识别热量,给出饮食建议,颠覆减肥靠瞎饿。
  • SiameseUIE在保险理赔文本中的应用:自动抽取出险时间、地点、损失类型
  • 利用DeepSeek辅助把幻灯片markdown文件转换成pdf
  • 基于Java的房地产评估智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • Xinference-v1.17.1中文优化专项:针对简体中文Tokenization与Prompt工程调优
  • Python基于Vue的 服装有限公司服装生产管理信息系统设计与实现django flask pycharm
  • Super Qwen Voice World多语言混合语音合成展示:中英文无缝切换
  • 基于Java的房地产开发公司售楼智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • YOLOE官版镜像GPU算力适配指南:CUDA:0设备配置与显存占用优化技巧
  • SAM 3性能实测报告:A100上单图分割耗时<380ms,吞吐达26FPS
  • Qwen3-4B Instruct-2507企业实操:集成至内部知识库实现智能FAQ问答系统
  • 基于Java的房地产抵押贷款智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • ChatTTS语音包实战:从零构建高可用语音合成服务
  • 2026年2月成都旧房翻新品牌权威盘点:这5家凭何领跑行业? - 推荐官
  • 基于Java的房地产网站智慧管理系统的设计与实现全方位解析:附毕设论文+源代码
  • Python基于Vue的”黄山旅游网站的设计与实现 django flask pycharm
  • 基于LLM的智能客服系统设计与实现:从架构设计到性能优化实战
  • python: Template Method Pattern