第 5 章:Git 与 GitHub 入门
学习目标
- 理解版本控制的重要性
- 掌握 Git 基本操作
- 学会使用 GitHub
5.1 为什么需要版本控制
问题场景
你在写代码时遇到过这些问题吗?
- 修改了代码,想回到之前的版本
- 多人协作时代码冲突
- 不知道谁改了什么
- 想尝试新功能但怕破坏现有代码
版本控制系统就是为了解决这些问题。
Git 的优势
- 分布式:每个人都有完整历史
- 快速:本地操作,速度快
- 分支:轻松创建和合并分支
- 开源:全球最流行的版本控制系统
5.2 Git 基本概念
工作区、暂存区、仓库
工作区 (Working Directory)
↓ git add
暂存区 (Staging Area)
↓ git commit
本地仓库 (Local Repository)
↓ git push
远程仓库 (Remote Repository)
5.3 Git 安装与配置
# 安装
sudo apt install git
# 配置用户信息
git config --global user.name "Your Name"
git config --global user.email "your@email.com"
# 查看配置
git config --list
5.4 基本操作
创建仓库
# 初始化仓库
mkdir my-project
cd my-project
git init
# 查看状态
git status
提交代码
# 创建文件
echo "# My Project" > README.md
# 添加到暂存区
git add README.md
# 提交
git commit -m "Initial commit"
# 查看历史
git log
git log --oneline --graph
查看差异
# 查看工作区与暂存区的差异
git diff
# 查看暂存区与仓库的差异
git diff --staged
5.5 GitHub 入门
什么是 GitHub
GitHub 是全球最大的代码托管平台,提供:
- 代码托管
- 协作开发
- 问题追踪
- 持续集成
创建 GitHub 账号
访问 github.com 注册账号。
SSH 密钥配置
# 生成密钥
ssh-keygen -t ed25519 -C "your@email.com"
# 查看公钥
cat ~/.ssh/id_ed25519.pub
# 复制公钥到 GitHub Settings -> SSH Keys
推送到 GitHub
# 添加远程仓库
git remote add origin git@github.com:username/repo.git
# 推送
git push -u origin main
实践练习
- 创建一个新项目
- 初始化 Git 仓库
- 创建 README.md 和 main.c
- 提交至少 3 次
- 在 GitHub 创建仓库并推送