Git 学习指南:从日常命令到多人协作与提交规范
标签:Git、版本控制、多人协作、代码规范、开发工具
Git 是分布式版本控制系统。本文整理 Git 日常开发命令、多人协作流程、Conventional Commits 规范,以及 Trae 里的源代码管理功能,适合作为 Git 入门与速查笔记。
一、Git 是什么?
Git 是分布式版本控制系统,主要用于:
- 记录每次代码修改,随时回退到某个版本
- 多人协作开发过程中,利用分支并行开发功能,不影响主线
- 把代码备份到 Gitee / GitHub / GitLab 等远程仓库
二、Git 日常开发核心流程
🎯 工作区 --git add--> 暂存区 --git commit--> 本地仓库 --git push--> 远程仓库
- 工作区:你实际改过的文件,相当于"你在逛的商品"
- 暂存区 :已经
git add的文件,相当于"放进购物车" - 提交 :
git commit,相当于"下单付款"
三、最常用 Git 命令速查
🛡️ 建议收藏,日常开发基本够用。
| 目的 | 命令 |
|---|---|
| 初始化仓库 | git init |
| 克隆远程仓库 | git clone <url> |
| 查看当前仓库状态(当前分支、修改、暂存、未跟踪) | git status |
| 添加文件到暂存区 | git add . / git add file |
| 提交 | git commit -m "feat: xxx" |
| 查看提交历史 | git log |
| 查看差异 | git diff |
| 查看分支 / 查看所有分支 | git branch / git branch -a |
| 创建并切换分支 | git switch -c feature/login |
| 切换分支 | git switch main |
| 合并分支 | git merge <branch> |
| 删除分支 | git branch -d feature/login |
| 查看远程 | git remote -v |
| 添加远程 | git remote add origin <url> |
| 拉取 | git pull |
| 推送 | git push / git push -u origin main |
| 撤销工作区修改 | git restore file |
| 取消暂存 | git restore --staged file |
| 回退提交 | git reset |
| 变基 | git rebase |
四、多人协作、并行开发模式典型流程
📌 这一段是团队开发中最常见的 Git 工作流。
第一步:拉取主分支最新代码
bash
git clone <仓库地址>
cd 项目目录
git switch main # 切换到本地名为 main 的分支
git pull # 默认拉取当前分支的上游分支。当前在 main 分支,且它跟踪 origin/main 这个上游分支
git clone:从无到有,把整个远程仓库复制到本地。用于第一次获取仓库。git pull:在已有本地仓库里,把远程最新更新同步到当前分支。用于日常同步更新。
第二步:创建自己的功能分支
bash
# 基于当前所在提交,创建一个名为 feature/login 的新分支,并立即切换到这个新分支
git switch -c feature/login
# -c:create 的缩写,表示创建新分支
# feature/login:新分支的名字
这里 feature/login 就是你自己的开发分支。
之后你的提交都会记录在 feature/login 上,不会直接影响 main。
第三步:在功能分支上开发并提交
bash
# 修改代码
git add .
git commit -m "feat: 完成登录功能"
第四步:推送到远程仓库
bash
# 把本地 feature/login 分支推送到 origin 远程仓库
# 在远程创建同名的 feature/login 分支,并让本地 feature/login 跟踪远程的 origin/feature/login
git push -u origin feature/login # 第一次
git push # 后续推送(已设置跟踪关系)
第五步:在 Gitee / GitHub 发起合并请求
在 Gitee 上发起 Pull Request ,在 GitLab 上叫 Merge Request。
请求把 feature/login 合并到 main。
第六步:代码审查、测试、合并
审查通过后,合并到 main。
然后可以删除功能分支。
五、Conventional Commits 约定式提交规范
🛠️ 统一提交信息,方便追踪历史、生成 changelog,也方便团队协作。
| 前缀 | 适用场景 | 例子 |
|---|---|---|
feat |
新增功能 | feat: 添加用户登录 |
fix |
修复 bug | fix: 修复订单金额计算错误 |
docs |
只改文档 | docs: 更新 README |
style |
格式调整,不影响逻辑 | style: 格式化代码 |
refactor |
重构,不是新功能也不是修 bug | refactor: 抽取登录校验逻辑 |
perf |
性能优化 | perf: 优化列表渲染速度 |
test |
测试相关 | test: 补充登录单元测试 |
build |
构建系统或依赖变更 | build: 升级 webpack 到 5 |
六、Trae 里的源代码管理功能
🔐 Trae 的 CodingAgent 内置了 Git 提交相关能力,面板右侧部分可以完成暂存、提交、推送。

面板里的「提交变更内容」输入框 = git commit -m "..." 里引号里的那段文字,将来在 GitHub 提交历史里显示。
1. 暂存(Stage)------「+」号
- 在「更改」分组里,把鼠标移到某个文件上,文件右侧会出现一个
+,表示暂存这一个文件; - 「更改」分组标题栏右侧也有个
+,点它 = 全部暂存。
2. 提交(Commit)------ 就是面板中的「提交」按钮(✓)
- 面板最顶部有个输入框,用来写提交信息;
- 输入框上方的 ✓ 对勾按钮 = 提交。
3. 推送(Push)------ 提交后才出现
提交完成后,底部状态栏(左下角,显示当前分支 main 的位置)会出现一个「同步更改 / Sync Changes」按钮,一个带 ↑↓ 箭头的图标,旁边有数字 ↑1,点它就是推送。
一句话区分:暂存 = 挑选「要提交哪些改动」,提交 = 把这些改动正式存成一个版本。
七、用购物来理解暂存与提交
| 概念 | 比喻 | 说明 |
|---|---|---|
| 工作区(更改列表) | 你在逛的商品 | 你实际改过的文件 |
| 暂存(Staged) | 放进购物车 | 你「选中」准备提交的改动 |
| 提交(Commit) | 下单付款 | 把购物车里的东西固化成一个历史版本 |
关键:只有放进购物车(暂存)的东西,才会被下单(提交)。没暂存的改动会一直留在「更改」列表里,不进这次提交。
八、总结
git add:把改动放进暂存区git commit:生成一个本地版本git push:同步到远程仓库- 功能开发用独立分支,通过 PR / MR 合并
- 提交信息遵循 Conventional Commits,方便追踪和自动化
- Trae 等工具里的源代码管理面板,本质上也是围绕「暂存 → 提交 → 推送」这三步