Git
版本控制。
Git:版本控制与协作基础
这一课你将能做到
- 初始化仓库、提交更改、查看历史,独立完成完整的版本管理流程
- 创建和合并分支,用分支隔离不同功能开发,避免互相干扰
- 解决合并冲突,正确配置
.gitignore,让仓库保持干净
为什么要学
写代码不可能一次写对。你会改需求、修 bug、尝试新方案、回滚旧版本。没有版本控制,你只能 代码_final_最终版_真的最终版.zip——这不是玩笑,是很多团队的真实经历。Git 是事实上的行业标准,99% 的互联网公司用它管理代码。
对初学者来说,Git 的门槛在于它的「分布式」概念和命令行操作。但一旦上手,你会发现它是最可靠的后悔药:改坏了?回退。想试新功能?切分支。想知道谁改的?看日志。
先建立图像
Git 把文件的状态分成三个区域:
工作区(Working Directory)
你看到的文件,可以随便改
↓ git add
暂存区(Staging Area / Index)
准备提交的更改,可以撤回
↓ git commit
本地仓库(Repository)
永久保存的快照,形成历史链
↓ git push
远程仓库(Remote)
GitHub/GitLab 上的共享仓库
每次 git commit 就是给当前状态拍一张快照,并附上说明。这些快照组成一条时间线,你可以随时跳到任意一个快照。
跟着做
步骤 1:安装与配置
下载 Git(git-scm.com),安装后打开终端:
# 配置身份(提交记录会显示你是谁)
git config --global user.name "你的名字"
git config --global user.email "your@email.com"
# 设置默认分支名为 main(现代标准)
git config --global init.defaultBranch main
# 验证
git --version
git config --list
步骤 2:初始化仓库并提交
# 进入项目文件夹
mkdir my-project && cd my-project
# 初始化 Git 仓库
git init
# 创建文件
echo "# 我的项目" > README.md
# 查看状态(哪些改了、哪些没跟踪)
git status
# 添加到暂存区
git add README.md
# 或添加所有更改
git add .
# 提交到本地仓库
git commit -m "初始化项目,添加 README"
# 查看提交历史
git log --oneline
git status 是你最好的朋友,状态不明时先运行它。
步骤 3:修改、再提交、看差异
# 修改 README.md
echo "这是项目说明。" >> README.md
# 查看改了什么(工作区 vs 暂存区)
git diff
# 添加并提交
git add README.md
git commit -m "补充项目说明"
git diff 显示具体的行级差异,红色是删除,绿色是新增。
步骤 4:分支管理
# 查看当前分支
git branch
# 创建并切换到新分支
git checkout -b feature-login
# 或新版语法
git switch -c feature-login
# 在新分支上开发
echo "登录功能代码" > login.js
git add login.js
git commit -m "添加登录功能"
# 切回主分支
git switch main
# 把 feature-login 合并到 main
git merge feature-login
# 删除已合并的分支
git branch -d feature-login
分支的本质是指向某个提交的「可移动指针」。main 随提交前进,feature-login 在独立线上前进,合并时 Git 尝试把两条线合二为一。
步骤 5:合并冲突
当两个分支修改了同一文件的同一位置,Git 无法自动判断该保留哪个,就会产生冲突: