Git速查命令

1. 状态检查

bash 复制代码
git status
git diff
git diff --cached
git log --oneline --graph --decorate --all
git branch -vv
git remote -v

常用顺序:

text 复制代码
先看状态
再看 diff
最后决定 add、commit、pull、push 或回退

2. 本地提交流程

bash 复制代码
git status
git diff
git add README.md
git diff --cached
git commit -m "docs(git): update note"

提交后推送:

bash 复制代码
git push

第一次推送新分支:

bash 复制代码
git push -u origin feature/xxx

3. 分支操作

bash 复制代码
git branch
git branch -a
git checkout -b feature/xxx
git switch -c feature/xxx
git checkout main
git switch main
git branch -d feature/xxx
git push origin --delete feature/xxx

查看分支和 upstream:

bash 复制代码
git branch -vv

4. 远程仓库

bash 复制代码
git remote -v
git remote add origin git@github.com:username/repo.git
git remote set-url origin git@github.com:username/repo.git
git fetch origin
git pull
git push

SSH 测试:

bash 复制代码
ssh -T git@github.com

5. merge、rebase、pull

合并功能分支:

bash 复制代码
git checkout main
git pull
git merge feature/xxx
git push

让功能分支跟上 main:

bash 复制代码
git checkout feature/xxx
git fetch origin
git rebase origin/main

pull 本质:

text 复制代码
git pull = git fetch + git merge
git pull --rebase = git fetch + git rebase

6. 撤销和回退

撤销工作区修改:

bash 复制代码
git restore README.md
git restore .

取消暂存:

bash 复制代码
git restore --staged README.md

修改最近一次 commit:

bash 复制代码
git commit --amend -m "docs(git): update message"

回退本地提交:

bash 复制代码
git reset --soft HEAD~1
git reset --mixed HEAD~1
git reset --hard HEAD~1

撤销已经公开的提交:

bash 复制代码
git revert <commit-hash>

清理未跟踪文件前先预览:

bash 复制代码
git clean -n
git clean -f

7. 冲突处理

merge 冲突:

bash 复制代码
git status
# 手动修改冲突文件
git add <file>
git commit

rebase 冲突:

bash 复制代码
git status
# 手动修改冲突文件
git add <file>
git rebase --continue

取消操作:

bash 复制代码
git merge --abort
git rebase --abort

8. .gitignore

常见规则:

gitignore 复制代码
build/
cmake-build-*/
*.o
*.log
.env
.vscode/
.idea/

已经被 Git 跟踪的文件,单独写入 .gitignore 不会自动失效。

需要:

bash 复制代码
git rm --cached path/to/file

排查忽略规则:

bash 复制代码
git check-ignore -v path/to/file

9. commit message

推荐格式:

text 复制代码
<type>(<scope>): <summary>

常见例子:

text 复制代码
feat(redis): add RESP array parser
fix(http): handle keep-alive timeout
docs(git): add rollback note
refactor(net): simplify event loop cleanup
test(parser): cover invalid bulk string
chore(cmake): enable compile warnings

10. 常见错误入口

text 复制代码
not a git repository
当前目录不是 Git 仓库,先 pwd 和 ls -la

remote origin already exists
origin 已存在,用 git remote -v 查看,用 set-url 修改

Permission denied (publickey)
SSH 没配好或权限不对,先 ssh -T git@github.com

failed to push some refs / non-fast-forward
远程有本地没有的提交,先 fetch,再 merge 或 rebase

Your local changes would be overwritten
工作区有未提交修改,先 commit、stash 或 restore

detached HEAD
当前站在 commit 上,不在分支上,需要保留就 switch -c 新分支

11. 排查命令

bash 复制代码
pwd
git status
git branch -vv
git remote -v
git log --oneline --graph --decorate --all

先看清楚:

text 复制代码
在哪个目录
在哪个分支
工作区是否干净
远程地址是否正确
本地和远程历史是否一致
相关推荐
青岛前景互联信息技术有限公司1 小时前
AI驱动的消防通信指挥系统:实现风险预警与智能接处警的秒级响应
大数据·人工智能·物联网
真上帝的左手1 小时前
19. 大数据- BI 入门-业务系统
大数据·bi
Legend NO241 小时前
非结构化数据治理全解:从合规痛点、中台架构到 AI 智能化分类落地
大数据·人工智能·架构
闻道参看1 小时前
智能搜索生态驱动的流量卡位实操:中小微入局者的 GEO 优化 服务选型全维度实证分析
大数据·人工智能
Volunteer Technology2 小时前
Flink编程模型与API
大数据·flink
悟空瞎说3 小时前
Git 协作工作流详解:从个人单打独斗到规模化团队协同
前端·git
金融Tech趋势派4 小时前
食品连锁品牌私域运营:企业微信+微盛·企微管家AI SCRM打造降本提效闭环
大数据·人工智能·企业微信
清辞8534 小时前
入门大模型工程师第四课----通过RAG增强大模型原本无法回答的问题
大数据·人工智能·学习·语言模型
染翰4 小时前
Java 实现 Git 自动克隆工具,打包成 Windows 独立 EXE(免安装JDK)
java·git·后端
科技互联.4 小时前
2026 数据治理中台选型指南:开放集成与 AI 智能化成为采购核心评判标准
大数据·人工智能