git基本操作 | 前端必备技能

28 阅读3分钟

学习路径图:我们将分四个阶段,每个阶段大约 15 分钟。

flowchart TD
    A[第一阶段<br>基础与本地仓库] --> B[第二阶段<br>提交历史与撤销]
    B --> C[第三阶段<br>分支管理]
    C --> D[第四阶段<br>远程协作]

第一阶段:Git 基础与本地仓库

1. 快速配置

安装 Git 后(可前往git-scm.com/downloads下载…

git config --global user.name "你的姓名"
git config --global user.email "你的邮箱@example.com"

2. 创建或获取仓库

  • 初始化新仓库:如果项目还没用 Git 管理,在项目根目录执行:
    git init
    
    这会在当前目录创建一个隐藏的.git文件夹,Git 就开始跟踪这个项目了。
  • 克隆现有仓库:如果要获取已有的远程仓库(如 GitHub 上的项目),使用:
    git clone <仓库URL>
    
    这会将远程仓库的代码和历史完整下载到本地。

3. 基本工作流程

Git 本地操作有三个核心区域:工作区(你直接编辑文件的地方)、暂存区(准备提交的文件清单)和仓库(存储所有提交记录的地方)。

对应的核心命令是:

# 1. 将文件的修改添加到暂存区(可指定具体文件,或使用 `git add .` 添加所有变更)
git add 文件名

# 2. 将暂存区的内容正式提交到仓库,并附上说明
git commit -m "清晰的提交说明"

# 3. 查看当前仓库状态(哪些文件被修改、哪些已暂存)
git status

# 4. 查看文件具体修改了哪些内容
git diff

记住这个流程:修改文件 → git addgit commit

第二阶段:查看提交历史与撤销操作(15 分钟)

1. 查看历史

# 查看详细的提交历史,包括提交哈希、作者、日期和说明
git log

# 以简洁的单行形式显示提交历史
git log --oneline

# 显示包含分支、合并历史等信息的图形化提交历史
git log --graph

2. 撤销操作

  • 撤销工作区的修改(文件还未git add):
    git checkout -- 文件名
    
  • 撤销暂存区的修改(文件已git add,但未git commit):
    git reset HEAD 文件名
    
  • 撤销提交(已git commit,想重写上一次提交信息或加入新修改):
    git commit --amend -m "新的提交信息"
    
  • 回退到某个旧版本(谨慎使用):
    git reset --hard 某个旧的提交哈希值
    

第三阶段:分支管理

分支让你能在独立的线上开发新功能或修复 Bug,而不影响主线(如mainormasterordev分支)。

1. 基础分支操作

# 查看所有本地分支(当前分支前有*号)
git branch

# 创建新分支
git branch 新分支名

# 切换到指定分支
git checkout 分支名

# 创建并立即切换到新分支(常用)
git checkout -b 新分支名

# 删除已合并的分支
git branch -d 分支名

2. 合并分支

开发完成后,需要将分支的改动合并回主分支:

# 1. 先切换回主分支
git checkout main

# 2. 将特性分支合并到当前所在的主分支
git merge 特性分支名

有时合并会产生冲突(当两个分支修改了同一文件的同一区域),需要手动解决冲突后再次提交。

第四阶段:远程协作

1. 远程仓库基础

# 查看已关联的远程仓库
git remote -v

# 关联一个远程仓库(通常克隆后会自动关联,名为origin)
git remote add origin 远程仓库URL

2. 推送与拉取

# 将本地提交推送到远程仓库(以origin的main分支为例)
git push -u origin main

# 从远程仓库拉取最新更新到本地(获取并合并)
git pull origin main

git push将你的本地提交上传到远程仓库,git pull则将远程仓库的更新下载到本地。

💡 核心命令速查表

任务命令
初始设置git config --global user.name "姓名" git config --global user.email "邮箱"
创建/克隆git init git clone <URL>
日常操作git add . git commit -m "说明" git status git diff
分支管理git branch git checkout -b 新分支 git merge 分支名
远程协作git push origin 主分支 git pull origin 主分支
查看历史git log git log --oneline