Skip to content

Git 与版本控制

Git 是每个开发者的基本功,也是企业协作的基础。这一章不追求背全命令,而是建立正确的工作流

一、什么是 Git

Git 是一个分布式版本控制系统。它能记录每一次代码修改,支持多人协作,出了问题可以随时回滚。

工作区(你正在改的代码)  →  add  →  暂存区  →  commit  →  本地仓库  →  push  →  远程仓库(GitHub)
                                                                        ← pull/fetch

二、全局配置(装好后做一次)

bash
git config --global user.name "你的名字"
git config --global user.email "你的邮箱@example.com"

三、高频命令速查

操作命令
克隆仓库git clone <url>
查看状态git status
查看改动git diff
暂存文件git add .
提交git commit -m "feat: 新增商品列表接口"
推送git push origin main
拉取最新git pull origin main
查看历史git log --oneline -10

四、分支模型(企业标准:Git Flow 简化版)

真实企业一般按如下约定管理分支,本教程全程遵循:

main(生产分支,永远可发布)
  └── dev(开发分支,日常开发合并到这里)
        └── feature/xxx(功能分支,每个人从 dev 拉)
bash
# 从 dev 拉功能分支
git checkout -b feature/user-module dev
# 开发完成后
git add .
git commit -m "feat: 用户注册登录模块"
git push origin feature/user-module
# 然后在 GitHub 上发起 Pull Request 合并到 dev

提交信息规范

企业项目强制约定 commit message 前缀,也是 Code Review 的一部分:

前缀含义
feat:新功能
fix:修复 Bug
docs:文档
refactor:重构(不改功能)
test:测试

五、.gitignore:别把不该提交的提交了

gitignore
node_modules/        # 依赖,装一下就有
target/              # Java 编译产物
.env.local           # 本地密钥
.DS_Store            # macOS 系统文件

绝对不要提交:数据库密码、JWT 密钥、第三方 API Key。本仓库根目录已配置好 .gitignore(clone 后可在仓库根目录查看)。

六、团队协作的一天

1. 上班 git pull dev        # 拉最新代码
2. 开始开发新功能
3. 阶段性 git add + commit  # 小步提交,方便回滚
4. 下班前 push 并提 PR      # 让同事 review
5. 通过后合并到 dev

七、遇到冲突怎么办

多人改了同一个文件,git pull 时可能冲突:

bash
git pull origin dev
# 提示 CONFLICT,Git 会在文件里标出 <<<<<<< ======= >>>>>>>
# 手动保留需要的内容,删掉冲突标记,然后:
git add .
git commit -m "merge: 解决 xxx 冲突"

小技巧

git log --oneline 记住每个提交号。改坏了?git checkout <提交号> -- <文件> 就能恢复某个文件。这是 Git 给你的"后悔药"。

基于 MIT 协议发布,可自由学习与修改