Skip to main content
发布于 2026-03-16 · 更新于 2026-03-16
Git 是开发者每天都在用的工具,但命令多、参数杂,记不住很正常。 这篇速查按使用场景分类,每个命令附带 Oh My Zsh 的 git 插件别名(括号内),让你少敲很多字。
前提:你的 .zshrc 里需要启用 git 插件:plugins=(... git)

基础概念:三个区域

Git 的文件在三个区域之间流转,理解了这个,后面所有命令都好懂:

初始化与配置


SSH 密钥配置

用 HTTPS 每次推送都要输密码,配置 SSH 密钥后就能免密操作。

1. 检查是否已有密钥

2. 生成密钥

推荐用 Ed25519:比传统 RSA 更安全、更快、密钥更短。GitHub 已屏蔽旧版 RSA/SHA-1 签名
系统会提示:
  • 建议自定义文件名(如 ~/.ssh/github_ed25519),避免多个服务的密钥互相覆盖
  • 密码(passphrase)可以直接回车留空,设了的话每次 push 都要输

3. 添加到 ssh-agent

macOS 用户可以在 ~/.ssh/config 中配置自动加载,省得每次手动添加:

4. 添加公钥到 GitHub

然后去 GitHub → Settings → SSH and GPG keys → New SSH key,粘贴即可。

5. 验证连接

多账号配置

如果你有多个 GitHub 账号(比如个人 + 公司),需要在 ~/.ssh/config 中用 Host 别名区分:
克隆公司仓库时把 github.com 换成别名:

日常提交三连

最核心的操作流程:改代码 → 暂存 → 提交

暂存文件

提交


查看变更


分支操作

分支是 Git 的核心杀手锏,随便开、随便切、合完就删。

查看与创建

删除与重命名


远程操作

拉取

推送

获取


合并与变基


暂存工作(Stash)

手头写了一半要切分支?stash 帮你把改动暂时藏起来。

撤销与回退

这是最容易搞混的部分。记住一个原则:先确认影响范围,再操作

撤销暂存

撤销修改

回退提交

安全提示reset --hard 会丢失未提交的修改,用前三思。优先用 revert 来安全地撤销已推送的提交。

查看历史


标签


WIP 快捷流程

Oh My Zsh 提供了一套”半成品保存”流程,切分支前用 gwip,回来用 gunwip

我的高频操作 Top 10


参考资源