下载工作台
Git 与团队协作

拉取、stash 与进阶整理

试读上半部分 · 解锁后可读全文

第 6 章 · 拉取、stash 与进阶整理

本章目标:掌握 从 GitHub 拉取 的完整节奏;拉取遇冲突时按 ch05 解决;会用 stash 临时存未提交改动;了解 撤销/回滚 菜单的适用边界;rebase 仅作选修概念。

学时建议:3~3.5 小时(含 1.5 小时跟练)

前置git-collab ch05(会解决合并冲突);ch08 会 push/pull 菜单。


6.1 场景说明:早上没 pull,一 push 就被拒

你在 feature/cart-badge 上开发了一晚,准备 推送到 GitHub。界面提示类似:

推送被拒绝:远程包含您本地没有的提交

原因:同事昨晚已把 main 或同一分支推上去。你需要 先拉取,把远程变更合进本地,再 push。

若拉取时你和远程改了同一行,就会出现 ch05 同款冲突——本章教你在工作台里安全走完。


6.2 学完你能

能力验收
开工 pull说清「先拉再改再推」
拉取冲突认标记 → 改文件 → 暂存 → 提交
stash临时存 WIP,切分支后再 pop
菜单撤销知何时用「撤销提交」vs「重置到提交」
边界已 push 的提交不能悄悄 reset

6.3 标准节奏:pull → 开发 → push

① 打开项目(仓库根)
② 切 main → 从 GitHub 拉取
③ 切 feature →(可选)把 main 合进 feature
④ SRX / 手改 → 暂存 → 提交(多次)
⑤ 推送到 GitHub

为什么先 pull main:减少 push 被拒;合并冲突越早出现越好解决。

菜单路径(名称以界面为准):

  • 仓库 → 仓库设置 → 从 GitHub 拉取
  • GitHub 远程仓库 子菜单里的拉取项

拉取时可能出现 进度条,大仓库请等完成,不要连点。


6.4 跟练 A:无冲突拉取(happy path)

步骤 1 — 在 GitHub 网页改一行

浏览器打开你的 shop-demo 仓库 → 编辑 README.md → 加一行「远程测试 2026」→ 直接 commit 到 main(个人练习仓库可以;团队项目应走 PR)。

步骤 2 — 本地 main 拉取

工作台:项目 → 打开项目 → 选 shop-demo 根目录。

cd ~/dev-workspace/shop-demo
git checkout main
git status   # 期望 clean

仓库设置 → 从 GitHub 拉取

步骤 3 — 验证

打开 README.md,应看到网页上那行。终端:

git log --oneline -3

你应该看到 多了一条来自远程的提交(或 fast-forward 提示)。


6.5 跟练 B:拉取时产生冲突(必做)

步骤 1 — 本地 main 改 README 第一行(不 push)

git checkout main

README.md 第一行改为:

# shop-demo — 本地 main 未推送

暂存 → 提交,说明:docs: 本地 main 标题

步骤 2 — 网页再改同一行

GitHub 上把第一行改为:

# shop-demo — 远程 main 标题

commit 到 main。

步骤 3 — 本地拉取

从 GitHub 拉取

步骤 4 — 应出现冲突

README.md<<<<<<< 等标记;文件树 M 强提示。

步骤 5 — 解决(同 ch05)

改成统一标题,例如:

# shop-demo — pull 冲突已解决

以下内容需解锁后阅读

试读已结束。解锁本章 ¥5.00,或开通年度会员畅读全部教程。
年度会员 ¥199.00/年; 小紫 AI 工作台有效会员 ¥99.00/年

正文仅在服务端鉴权后下发,未付费无法获取下半部分内容。