<aside>
💡 本期讨论活动已结束,更多有意思的活动和分享,欢迎关注 0xFFFF 网站 和群聊
</aside>
课程内容
细节
<aside>
💡 非常建议读一读 官方的讲义,非常浅显易懂又抓住重点
</aside>
-
关于版本控制系统(VCS)

- 作用:
- Git 的最简单用法
- 提交 + 同步远程 git add / commit / push / pull
- 万一出问题,工作目录复制到别处;重开
-
Git 存储的概念模型(目的)
Git - Git 是什么?
- 特点
- 概念的差异:
- 基本单位
- 目录(Directory) → tree
- 文件(File) → Blob
- snapshot → commit
- Object 抽象成 hash 值
- id:object 的 hash(抽象出来,都是字符串操作)
- object store
- Reference:把 id 的 hash 变得可读
- 机器层面(文件操作成本) → hash (人类可读性)→ reference
- 特殊的 reference:HEAD
- Git 仓库:repository = Object + Refrence
- Git 的 staging area 暂存区:形成快照的地方
-
Git 常用命令(手段)
- git checkout -b
- 分支操作(协作开发常用)
-
git merge

-
git rebase

- 核心原则:如果提交存在于你的仓库之外,而别人可能基于这些提交进行开发,那么不要执行变基
- 远程仓库操作
- git pull —rebase:git fetch; git rebase origin/master
- git pull:git fetch; git merge origin/master
- git clone
- —shallow(只拉最新的 snapshot)
- —depth=1
- git commit —amend (push 之前去做)
-
Git 高级操作
- git revert:产生一个相互抵消的commit
- git blame(GitLens 插件)
- git stash
- git bisect
-
其他的 Git 细节
工具推荐:
- VSCode GitLens
在线讨论
The Missing Semester 第6讲讨论 - Git的入门与进阶 - 3.5_哔哩哔哩_bilibili
议题: