</> r0f2 / 技术札记

Git版本控制完全指南

2024-01-10 Git / 版本控制
Git 版本控制 VSCode

一、为什么需要版本控制?

版本控制系统是现代软件开发的基础设施。无论是个人项目还是团队协作,版本控制都能帮助你:

  • 追踪代码历史,记录每一次修改
  • 轻松回退到任意历史版本
  • 多人协作开发,互不干扰
  • 创建代码分支,并行开发
Git vs SVN Git是分布式版本控制系统,每个开发者都有完整的代码仓库副本,即使离线也能提交和查看历史。

二、Git核心概念

2.1 三个区域

  • 工作区 (Working Directory) - 你正在编辑的文件
  • 暂存区 (Staging Area) - 准备提交的修改
  • 仓库 (Repository) - 已提交的版本记录

2.2 文件状态

  • 已修改 (Modified) - 已修改但未暂存
  • 已暂存 (Staged) - 已放入暂存区
  • 已提交 (Committed) - 已存入仓库

三、Git安装与配置

git --version

检查是否已安装Git。Windows用户可从 git-scm.com 下载安装。

3.1 首次配置

# 设置用户名
git config --global user.name "你的名字"

# 设置邮箱
git config --global user.email "你的邮箱@email.com"

# 查看配置
git config --list

四、VSCode一键发布到GitHub

使用VSCode可以无需记忆命令,一键将本地项目发布到GitHub:

操作步骤
  1. 用VSCode打开项目文件夹
  2. 点击左侧源代码管理图标 (Ctrl+Shift+G)
  3. 点击「初始化仓库」
  4. 输入提交信息,点击提交
  5. 点击底部「发布到GitHub」

4.1 详细步骤

1. 点击底部状态栏「发布分支」/「Publish to GitHub」
2. 弹出窗口中勾选要推送的文件(首次默认全选)
3. 选择可见性:Public(公开)或 Private(私密)
4. 输入仓库名称(会自动填充当前文件夹名)
5. 点击「OK」确认
6. 首次推送会弹出GitHub登录窗口,登录验证即可
验证成功 底部状态栏显示 main 分支和 0↓ 1↑ 表示同步成功。

五、常用Git命令

5.1 基础命令

# 初始化仓库
git init

# 克隆远程仓库
git clone https://github.com/用户名/仓库名.git

# 查看状态
git status

# 添加到暂存区
git add 文件名      # 单个文件
git add .          # 所有文件

# 提交
git commit -m "提交说明"

# 查看提交历史
git log --oneline

5.2 远程操作

# 添加远程仓库
git remote add origin https://github.com/用户名/仓库名.git

# 推送到远程
git push -u origin main

# 拉取最新代码
git pull

# 查看远程仓库
git remote -v

5.3 撤销操作

# 撤销工作区修改
git checkout -- 文件名

# 取消暂存
git reset HEAD 文件名

# 回退版本
git reset --hard commit_id

六、分支管理

# 查看分支
git branch

# 创建分支
git branch 分支名

# 切换分支
git checkout 分支名

# 创建并切换
git checkout -b 分支名

# 合并分支
git merge 分支名

# 删除分支
git branch -d 分支名
最佳实践 主分支(main)保持稳定,新功能在feature分支开发,测试通过后再合并到主分支。

七、常见问题与解决

合并冲突 当两个分支修改了同一行代码时会产生冲突。手动解决冲突后,使用 git add .git commit 完成合并。
  • push被拒绝 - 先pull再push
  • 忘记提交就pull - 使用 git stash 暂存修改
  • 删除误删文件 - git checkout -- 文件名