Skip to content

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

  1. 访问 TortoiseGit 官网 下载安装包
  2. 运行安装程序,按提示完成安装
  3. 安装完成后重启电脑

基础配置

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技术团队