Git 基础入门超详细教程
一、什么是 Git?
Git 是一个免费、开源的分布式版本控制系统,用于跟踪代码变更、协作开发和项目管理。
为什么要使用 Git?
- 📝 记录文件变更历史
- 👥 多人协作开发
- 🔄 轻松回退到任意版本
- 🌿 分支管理,并行开发
二、安装 Git
Windows 系统
- 访问 Git 官网
- 下载 Windows 版本安装包
- 双击运行,一路 Next 即可
macOS 系统
# 使用 Homebrew 安装
brew install gitLinux 系统
# Ubuntu/Debian
sudo apt update
sudo apt install git
# CentOS/RHEL
sudo yum install git验证安装:
git --version三、基础配置
安装完成后,首先配置你的用户名和邮箱:
# 配置用户名
git config --global user.name "你的用户名"
# 配置邮箱
git config --global user.email "你的邮箱@example.com"查看配置:
git config --list四、Git 核心概念
工作区、暂存区、版本库
- 工作区(Working Directory):你正在编辑的文件
- 暂存区(Staging Area):临时存放待提交的变更
- 版本库(Repository):保存所有提交记录
文件状态
- Untracked:未跟踪的新文件
- Modified:已修改但未暂存
- Staged:已暂存,准备提交
- Committed:已提交到版本库
五、常用命令详解
1. 初始化仓库
# 在当前目录创建新仓库
git init
# 克隆远程仓库
git clone https://github.com/username/repo.git2. 查看状态
# 查看文件状态
git status
# 查看简洁状态
git status -s3. 添加文件到暂存区
# 添加单个文件
git add filename.txt
# 添加所有文件
git add .
# 添加指定类型文件
git add *.txt4. 提交变更
# 提交暂存区的内容
git commit -m "提交说明"
# 跳过暂存区,直接提交所有已跟踪文件的变更
git commit -a -m "提交说明"5. 查看历史记录
# 查看完整提交历史
git log
# 查看简洁历史(一行显示)
git log --oneline
# 查看图形化分支历史
git log --graph --oneline --all6. 查看差异
# 查看工作区与暂存区的差异
git diff
# 查看暂存区与版本库的差异
git diff --staged六、分支管理
分支是 Git 最强大的功能之一,让你可以并行开发。
1. 查看分支
# 查看本地分支
git branch
# 查看所有分支(包括远程)
git branch -a2. 创建分支
# 创建新分支
git branch 分支名
# 创建并切换到新分支
git checkout -b 分支名
# 或使用新版命令
git switch -c 分支名3. 切换分支
# 切换到指定分支
git checkout 分支名
# 或使用新版命令
git switch 分支名4. 合并分支
# 切换到目标分支(如 main)
git switch main
# 合并指定分支到当前分支
git merge 分支名5. 删除分支
# 删除已合并的分支
git branch -d 分支名
# 强制删除未合并的分支
git branch -D 分支名七、远程仓库操作
1. 关联远程仓库
# 添加远程仓库
git remote add origin https://github.com/username/repo.git
# 查看远程仓库
git remote -v2. 推送代码
# 首次推送(设置上游分支)
git push -u origin main
# 后续推送
git push3. 拉取代码
# 拉取并合并远程代码
git pull
# 只拉取不合并
git fetch八、撤销操作
1. 撤销工作区修改
# 撤销指定文件的修改
git checkout -- filename.txt
# 或新版命令
git restore filename.txt2. 撤销暂存
# 将文件从暂存区撤回工作区
git reset HEAD filename.txt
# 或新版命令
git restore --staged filename.txt3. 撤销提交
# 撤销最近一次提交,但保留修改
git reset --soft HEAD~1
# 撤销最近一次提交,丢弃修改(谨慎使用!)
git reset --hard HEAD~1九、实用技巧
1. 忽略文件
创建 .gitignore 文件,指定不需要跟踪的文件:
# 依赖目录
node_modules/
vendor/
# 系统文件
.DS_Store
Thumbs.db
# IDE 配置
.idea/
.vscode/
# 环境变量
.env2. 保存临时修改
# 保存当前工作进度
git stash
# 查看保存列表
git stash list
# 恢复最近的保存
git stash pop3. 查看提交统计
# 查看每个人的提交次数
git shortlog -sn十、常见工作流程
个人开发流程
# 1. 创建功能分支
git switch -c feature/login
# 2. 编写代码...
# 3. 提交变更
git add .
git commit -m "实现登录功能"
# 4. 切换到主分支
git switch main
# 5. 合并功能分支
git merge feature/login
# 6. 推送到远程
git push团队协作流程
- Fork 项目到自己的仓库
- Clone 自己的仓库到本地
- 创建功能分支开发
- 提交并推送到自己的仓库
- 提交 Pull Request
- 代码审查后合并
总结
掌握以上命令,你就能应对日常开发中的大部分场景。Git 学习曲线虽然有点陡,但一旦掌握,你会发现它是开发中不可或缺的工具。
建议: 多练习,多用 git status 和 git log 查看状态,理解每一步操作的含义。
祝学习愉快!🚀