企业新人第一天:一套可直接照抄执行的 Git 命令流程(不翻车版)
在当前代码基础上,加一个 XXX 功能”指定 reviewer(leader)接到最新 main 的后面。确保你不是基于旧代码提交。❌ 没看懂就乱 reset。,也不要直接 pull。上用 rebase。👉 到这里,你的任务。
·
企业新人第一天:一套可直接照抄执行的 Git 命令流程(不翻车版)
适合对象:
- 刚入职 / 刚实习
- 会
git add / commit / push,但不懂多人协作- 害怕把主干代码搞炸的新人
一、先说结论(新人一定要背)
永远不要在
main / master上直接开发
你的所有代码,都必须在你自己的分支上完成
这条是 公司级铁律。
二、第一天:把公司项目拉下来(只做一次)
git clone https://github.com/xxx/project.git
cd project
第一次拉完,你什么都不要改,先看状态:
git status
git branch -a
你大概率会看到:
* main
remotes/origin/main
说明:
main是公共主干- ❌ 不能直接在这里写代码
三、Leader 给你任务了,你应该怎么做?
Leader:
“在当前代码基础上,加一个 XXX 功能”
四、新人标准第一步:同步主干代码(必须)
git checkout main
git pull origin main
目的只有一个:
确保你是从“最新的公司代码”开始开发
五、从主干切你自己的功能分支(最关键一步)
git checkout -b feature/xxx
例如:
git checkout -b feature/order-timeout
检查一下:
git branch
你应该看到:
* feature/order-timeout
main
✅ 现在你是 安全状态
六、开始开发(你在这个分支上是自由的)
你现在可以:
- 改代码
- 加文件
- 删文件
- 多次提交
git add .
git commit -m "feat: add order timeout logic"
提交信息建议(企业常见):
feat:新功能fix:修 bugrefactor:重构docs:文档
七、开发过程中,同事一定会改主干(现实)
这时候你不要慌,也不要直接 pull。
推荐新人用的做法(非常稳)
git fetch origin
git rebase origin/main
含义是:
把你自己的提交
接到最新 main 的后面
如果有冲突:
# 解决冲突
git add .
git rebase --continue
⚠️ 只在 你自己的 feature 分支 上用 rebase。
八、功能写完,准备交付(非常重要)
1️⃣ 再同步一次主干(一定要做)
git fetch origin
git rebase origin/main
确保你不是基于旧代码提交。
2️⃣ 把你的分支推到远程
git push origin feature/order-timeout
3️⃣ 去 GitHub / GitLab 做什么?
-
打开仓库页面
-
点击 New Pull Request / Merge Request
-
选择:
- base:
main(或develop) - compare:你的
feature/order-timeout
- base:
-
填写说明
-
指定 reviewer(leader)
👉 到这里,你的任务 已经完成 90%
九、Leader / CI 会做什么?
- Code Review
- 自动化测试
- 提建议或让你改点细节
你只需要:
# 按要求改
git add .
git commit -m "fix: address review comments"
git fetch origin
git rebase origin/main
git push origin feature/order-timeout
十、新人千万不要做的事(血泪警告)
❌ git push origin main
❌ 在 main 上写代码
❌ 在公共分支 rebase
❌ git push --force 到 main
❌ 没看懂就乱 reset
十一、新人可直接背的「安全模板」
# 1. 同步主干
git checkout main
git pull
# 2. 建功能分支
git checkout -b feature/xxx
# 3. 开发
git add .
git commit -m "feat: xxx"
# 4. 同步主干
git fetch origin
git rebase origin/main
# 5. 推送
git push origin feature/xxx
更多推荐

所有评论(0)