Git常用指令合集

一、Git 配置

复制代码
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

查看配置信息

复制代码
git config --list

二、基本流程(最常用)

操作 指令
创建本地仓库 git init
查看状态 git status
添加到暂存区 git add <file>
添加所有 git add .
提交 git commit -m "说明"
修改最新提交信息 git commit --amend
查看版本记录 git log

三、查看日志(简洁用法)

复制代码
git log --oneline --graph --decorate --all

四、分支相关

操作 指令
查看本地分支 git branch
创建分支 git branch <name>
切换分支 git checkout <name>
创建并切换 git checkout -b <name>
删除分支 git branch -d <name>
强制删除 git branch -D <name>
合并分支 git merge <name>

合并指:把 <name> 分支内容并入当前分支

例如:

复制代码
git checkout main
git merge dev

五、远程仓库

操作 指令
查看远程地址 git remote -v
添加远程仓库 git remote add origin <url>
推送 git push
首次推送 git push -u origin main
拉取 git pull
从远程获取但不合并 git fetch

六、回退(非常重要)

场景 指令
查看提交历史 git log --oneline
回退到某提交(保留改动) git reset --soft <commit>
回退到某提交(丢弃改动) git reset --hard <commit>
丢弃工作区更改 git checkout -- <file>
丢弃暂存区更改 git reset HEAD <file>

小心使用 --hard:会丢失本地未提交内容。

七、暂存(stash)

操作 指令
暂存当前修改 git stash
暂存并备注 git stash save "info"
查看 stash 列表 git stash list
恢复 git stash pop
删除 stash git stash drop

什么时候用?

→ 想切分支,但当前内容没保存,用 stash 暂存

八、克隆

复制代码
git clone <url>

九、标签(tag)

操作 指令
查看 tag git tag
创建 tag git tag v1.0
删除 tag git tag -d v1.0
推送 tag git push origin v1.0
推送全部 tag git push origin --tags

十、.gitignore

忽略某文件/目录

创建 .gitignore 填入:

复制代码
*.log
*.exe
build/

十一、diff(比较)

操作 指令
查看未提交差异 git diff
与暂存区对比 git diff --cached
查看两个 commit 差异 git diff <commit1> <commit2>

十二、冲突处理

合并出现冲突:

复制代码
git merge dev

编辑冲突文件 → 解决 → add → commit

十三、常用组合命令(推荐收藏)

查看分支图

复制代码
git log --oneline --graph --decorate --all

添加 + 提交

复制代码
git add .
git commit -m "msg"

初始化 + 推送

复制代码
git init
git add .
git commit -m "first"
git remote add origin <url>
git push -u origin main

十四、常见误区

错误 正确
git commit m "msg" git commit -m "msg"
git-log git log
没 add 就 commit 必须 add

十五、助记版(超简短)

复制代码
git init
git add .
git commit -m "msg"
git status
git log
git branch
git checkout -b dev
git merge dev
git push
git pull
git reset --hard <commit>
git stash
git clone
相关推荐
殷色玫瑰34 分钟前
C++ string类详解:常用接口、字符串操作与模拟实现
java·linux·c语言·开发语言·数据结构·c++
忆挽篱笙歌1 小时前
gcc,g++
linux
l1t2 小时前
修复WSL CreateInstance/E_UNEXPECTED和 mounted read-only 错误
linux·windows·wsl
Ruiery2 小时前
Linux 6.6内核 CPU 深度解析(九):时钟与 TSC — 内核怎么从 PIT/HPET 切到 TSC
linux·运维·服务器
挖掘狂人2 小时前
Git 从 0 到 1:用一个小项目走完 add / commit / reset / merge / rebase / push
git·后端·github
91刘仁德2 小时前
Linux网络编程从入门到实战:UDP/TCP协议与socket编程全解析
linux·网络·笔记·tcp/ip·udp
水饺编程3 小时前
第1章:下载 Linux 0.12 内核
linux·c语言·汇编·ubuntu
牢姐与蒯3 小时前
一点小碎片——每个线程独有的东西——上下文+栈
linux·运维·服务器
小此方3 小时前
Linux网络(二十):TCP拥塞控制与延迟应答详解:从拥塞窗口到TCP性能优化,理解TCP与UDP的效率差异
linux·网络·php
yunwei373 小时前
eBPF 开发实践:使用 eBPF 隐藏进程或文件信息
linux·后端·性能优化