Appearance
Git 基础使用
什么是 Git
Git 是一个分布式版本控制系统,用于跟踪文件变化,协调多人协作开发。
核心概念
工作区 → 暂存区 → 本地仓库 → 远程仓库
↓ ↓ ↓ ↓
git add git commit git push git pull
- 工作区: 当前编辑的文件
- 暂存区: 准备提交的文件
- 本地仓库: 本地代码历史
- 远程仓库: 远程代码历史
安装与配置
安装 Git
访问 Git 官网 下载并安装对应版本。
基础配置
bash
# 设置用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
# 验证安装
git --version
基础命令
仓库操作
bash
# 初始化仓库
git init
# 克隆仓库
git clone https://github.com/user/repo.git
# 查看状态
git status
文件操作
bash
# 添加文件
git add .
git add filename.txt
# 提交更改
git commit -m "添加新功能"
# 查看差异
git diff
分支操作
bash
# 查看分支
git branch
# 创建并切换分支
git checkout -b feature/new-feature
# 切换分支
git checkout main
# 合并分支
git merge feature/new-feature
# 删除分支
git branch -d feature/new-feature
远程操作
bash
# 推送代码
git push origin main
# 拉取代码
git pull origin main
# 查看提交历史
git log --oneline
常用操作
撤销操作
bash
# 撤销工作区更改
git checkout -- filename.txt
# 撤销最后一次提交
git reset --soft HEAD~1
# 修改最后一次提交
git commit --amend -m "修正提交信息"
暂存更改
bash
# 暂存当前更改
git stash
# 恢复暂存
git stash pop
# 查看暂存列表
git stash list
标签管理
bash
# 创建标签
git tag v1.0.0
# 推送标签
git push origin v1.0.0
基本工作流
日常开发流程
bash
# 1. 拉取最新代码
git pull origin main
# 2. 创建功能分支
git checkout -b feature/new-feature
# 3. 开发功能
git add .
git commit -m "添加新功能"
# 4. 推送分支
git push origin feature/new-feature
# 5. 创建 Pull Request
# 在 GitHub/GitLab 上创建 PR
# 6. 合并后删除分支
git checkout main
git branch -d feature/new-feature
工具推荐
图形界面工具
- TortoiseGit: Windows 下的 Git 图形界面工具
- SourceTree: 免费的 Git 图形界面工具
- GitHub Desktop: GitHub 官方客户端
- VS Code: 集成 Git 功能的编辑器
在线平台
- GitHub: 全球最大的代码托管平台
- GitLab: 开源代码托管平台
- Gitee: 国内的代码托管平台
常见问题
合并冲突
bash
# 解决合并冲突
git merge feature/new-feature
# 手动解决冲突后
git add .
git commit -m "解决合并冲突"
提交信息错误
bash
# 修改最后一次提交信息
git commit --amend -m "正确的提交信息"
TortoiseGit 使用指南
安装 TortoiseGit
- 访问 TortoiseGit 官网 下载安装包
- 运行安装程序,按提示完成安装
- 安装完成后重启电脑
基础配置
1. 配置用户信息
- 右键桌面 → TortoiseGit → Settings
- 在 General 页面设置用户名和邮箱
- 在 Network 页面设置代理(如需要)
2. 配置 SSH 密钥
- 打开 PuTTYgen 生成 SSH 密钥
- 保存公钥到远程仓库
- 在 TortoiseGit 中配置私钥路径
常用操作
1. 克隆仓库
- 右键桌面 → Git Clone
- 输入仓库 URL 和目标路径
- 点击 OK 开始克隆
2. 提交更改
- 在项目文件夹右键 → Git Commit
- 选择要提交的文件
- 输入提交信息
- 点击 Commit 提交
3. 推送代码
- 右键项目文件夹 → TortoiseGit → Push
- 选择远程分支
- 点击 OK 推送
4. 拉取代码
- 右键项目文件夹 → TortoiseGit → Pull
- 选择远程分支
- 点击 OK 拉取
5. 创建分支
- 右键项目文件夹 → TortoiseGit → Create Branch
- 输入分支名称
- 选择基于的分支
- 点击 OK 创建
6. 切换分支
- 右键项目文件夹 → TortoiseGit → Switch/Checkout
- 选择目标分支
- 点击 OK 切换
7. 合并分支
- 右键项目文件夹 → TortoiseGit → Merge
- 选择要合并的分支
- 点击 OK 合并
高级功能
1. 查看提交历史
- 右键项目文件夹 → TortoiseGit → Show Log
- 查看提交历史、差异和统计信息
2. 解决冲突
- 冲突文件会显示红色感叹号
- 右键文件 → TortoiseGit → Edit Conflicts
- 手动解决冲突后标记为已解决
3. 暂存更改
- 右键项目文件夹 → TortoiseGit → Stash
- 输入暂存描述
- 点击 OK 暂存更改
4. 恢复暂存
- 右键项目文件夹 → TortoiseGit → Stash Pop
- 选择要恢复的暂存
- 点击 OK 恢复
界面说明
文件状态图标
- 绿色勾: 文件已提交
- 红色感叹号: 文件有冲突
- 黄色感叹号: 文件已修改
- 蓝色加号: 文件已添加
- 红色减号: 文件已删除
右键菜单
- Git Commit: 提交更改
- Git Add: 添加文件到暂存区
- Git Revert: 撤销更改
- Git Update: 更新工作区
- Git Push: 推送代码
- Git Pull: 拉取代码
最佳实践
1. 提交前检查
- 使用 Show Log 查看提交历史
- 使用 Diff 查看文件差异
- 确保提交信息清晰明确
2. 分支管理
- 使用 Create Branch 创建功能分支
- 使用 Switch/Checkout 切换分支
- 使用 Merge 合并分支
3. 冲突解决
- 及时处理冲突文件
- 使用 Edit Conflicts 解决冲突
- 解决后及时提交
常见问题
1. 中文乱码
- 在 Settings → General 中设置编码为 UTF-8
- 重启 TortoiseGit 生效
2. 推送失败
- 检查网络连接
- 确认远程仓库权限
- 使用 Pull 先同步代码
3. 合并冲突
- 使用 Edit Conflicts 解决冲突
- 解决后标记为已解决
- 提交合并结果
学习资源
最后更新:2024-01-20
维护者:DSPlatform技术团队