Git常用指令

一、基础配置

复制代码
# 配置用户名
git config --global user.name "Your Name"

# 配置用户邮箱
git config --global user.email "your.email@example.com"

# 查看配置信息
git config --list

# 配置默认编辑器
git config --global core.editor "vim"  # 使用vim作为编辑器

二、仓库初始化与克隆

复制代码
# 初始化本地仓库
git init

# 克隆远程仓库
git clone <远程仓库地址>

# 克隆远程仓库到指定目录
git clone <远程仓库地址> <本地目录名>

三、文件状态与暂存

复制代码
# 查看文件状态
git status

# 查看文件修改内容
git diff <文件名>

# 将文件添加到暂存区
git add <文件名>

# 将所有修改添加到暂存区
git add .  # 添加当前目录所有修改
git add -A  # 添加所有修改(包括删除的文件)

# 取消暂存区的文件
git reset <文件名>

# 放弃工作区的修改(未暂存)
git checkout -- <文件名>

四、提交操作

复制代码
# 提交暂存区文件到本地仓库
git commit -m "提交说明"

# 直接提交已跟踪文件的修改(跳过暂存区)
git commit -am "提交说明"

# 修改最近一次提交(不改变提交历史)
git commit --amend

五、分支操作

复制代码
# 查看所有分支
git branch  # 本地分支
git branch -r  # 远程分支
git branch -a  # 所有分支

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

# 切换分支
git checkout <分支名>

# 创建并切换到新分支
git checkout -b <分支名>

# 合并分支(当前分支合并目标分支)
git merge <目标分支名>

# 删除本地分支
git branch -d <分支名>  # 安全删除(需合并后)
git branch -D <分支名>  # 强制删除

# 删除远程分支
git push origin --delete <分支名>

六、远程仓库操作

复制代码
# 查看远程仓库信息
git remote
git remote -v  # 详细信息

# 添加远程仓库
git remote add <远程仓库名> <远程仓库地址>

# 从远程仓库拉取代码(不合并)
git fetch <远程仓库名>

# 从远程仓库拉取并合并代码
git pull <远程仓库名> <分支名>

# 推送本地代码到远程仓库
git push <远程仓库名> <分支名>

# 推送本地所有分支到远程仓库
git push --all <远程仓库名>

# 关联本地分支与远程分支(后续可直接git push/pull)
git branch --set-upstream-to=origin/<远程分支名> <本地分支名>

七、版本回退

复制代码
# 查看提交历史
git log  # 详细历史
git log --oneline  # 简洁历史
git log --graph  # 图形化展示

# 回退到指定版本(保留工作区修改)
git reset --soft <提交ID>

# 回退到指定版本(不保留工作区修改)
git reset --hard <提交ID>

# 查看所有操作记录(包括已删除的提交)
git reflog

# 放弃本地所有修改,回到与远程一致
git fetch --all
git reset --hard origin/<分支名>

八、标签操作

复制代码
# 创建标签
git tag <标签名>  # 基于当前提交
git tag <标签名> <提交ID>  # 基于指定提交

# 查看所有标签
git tag

# 推送标签到远程仓库
git push <远程仓库名> <标签名>  # 推送单个标签
git push <远程仓库名> --tags  # 推送所有标签

# 删除本地标签
git tag -d <标签名>

# 删除远程标签
git push <远程仓库名> --delete <标签名>

九、其他常用命令

复制代码
# 忽略文件配置(创建.gitignore文件)
touch .gitignore  # 在文件中添加需要忽略的文件/目录

# 暂存当前工作区(用于临时切换分支)
git stash

# 恢复暂存的工作区
git stash pop

# 查看暂存列表
git stash list

# 放弃最近一次暂存
git stash drop
相关推荐
kyriewen1 天前
别再每次都 Google 了:我整理了前端日常最常踩的 10 个 Git 坑,附速查表
前端·javascript·git
A_Lonely_Cat3 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
和你看星星5 天前
Git rerere:让重复冲突只解决一次
git
曲幽5 天前
你的REST接口还在“过度投喂”数据吗?——FastAPI + GraphQL实战避坑指南
python·fastapi·web·graphql·route·cors·rest·strawberry
带刺的坐椅7 天前
Spring Boot → Solon 注解迁移实战指南:一张对照表说清楚
java·springboot·web·solon
嘻嘻仙人9 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson9 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友9 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金10 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git
江华森10 天前
Git 基础筑基:从原理到团队协作的全栈实战
git