1. 什么是版本控制
最热门的版本控制系统:
- Git
- Subversion
- Mercurial
版本控制系统模型:
- 集中式模型-所有用户都连接到一个中央的主仓库。
- 分布式模型-每个用户都在自己的计算机上拥有完整的仓库。
版本控制系统的目的:
- 保留项目详细的历史记录。
- 可以看到某个时间范围内项目进度。
- 可以回退到项目的某个阶段。
- 可以恢复数据或文件。
- 在不同版本上进行工作。
2. 日常开发中的版本控制
文本编辑中常用的 cmd
+ z
或 ctrl
+ z
这种撤销功能就是版本控制。
各大文档编辑器的自动保存功能。
3. Git 和版本控制术语
- 版本控制系统/源代码管理器
- VCS/SCM
- 提交
- Commit
- 快照
- 仓库
- (Repository/repo)
- 目录
- 工作目录/工作区
- Working Directory
- 检出
- Checkout
- 将仓库中的内容复制到工作目录下。
- 暂存区/暂存索引/索引
- Staging Area/Staging Index/Index
- 准备工作台
- SHA
- commit 的 ID 编号。40 个字符。
- 分支
- Branch
- 从主开发流程中分支出来的新的开发流程。
Git 工作的结构和流程图如下:
4. Mac/Linux 设置
初次配置 Git
# 设置你的 Git 用户名
git config --global user.name "<Your-Full-Name>"
# 设置你的 Git 邮箱
git config --global user.email "<your-email-address>"
# 确保 Git 输出内容带有颜色标记
git config --global color.ui auto
# 对比显示原始状态
git config --global merge.conflictstyle diff3
git config --list
VSCode 设置
git config --global core.editor "code --wait"