Git 的常用命令和基本用法 以下是 Git 的常用命令和基本用法按使用场景分类适合日常开发。一、仓库初始化与克隆命令说明git init在当前目录初始化一个新的 Git 仓库git clone url克隆远程仓库到本地git clone --depth 1 url浅克隆只下载最新一次提交节省时间二、查看状态与历史命令说明git status查看工作区和暂存区的状态最常用git log查看提交历史git log --oneline简洁版提交历史git log --graph --oneline --all图形化显示所有分支历史git diff查看工作区与暂存区的差异git diff --staged查看暂存区与上次提交的差异git show commit-hash查看某次提交的详细内容三、日常修改与提交命令说明git add file将文件添加到暂存区git add .添加所有修改包括新增、修改、删除git add -A同上更显式git commit -m message提交暂存区内容git commit -am message跳过 add直接提交已跟踪文件的修改git commit --amend修改上一次提交补充文件或修改说明git restore file丢弃工作区的修改恢复成暂存区或 HEAD 版本git rm file删除文件并记录到暂存区四、分支操作命令说明git branch查看本地分支当前分支带 *git branch -r查看远程分支git branch -a查看所有分支本地远程git branch name创建新分支git branch -d name删除分支git checkout branch切换分支git switch branch更安全的切换分支Git 2.23git checkout -b name创建并切换到新分支git merge branch将指定分支合并到当前分支git rebase branch变基操作使提交历史更线性五、远程仓库操作命令说明git remote -v查看远程仓库地址git remote add origin url添加远程仓库git push origin branch推送本地分支到远程git push -u origin branch推送并建立上游关联之后直接git pushgit push --force强制推送⚠️ 谨慎使用git pull拉取远程并合并 fetch mergegit fetch只拉取远程更新不自动合并git clone后的默认远程名是origin六、撤销与恢复命令说明git reset HEAD file将文件从暂存区撤出保留工作区修改git reset --soft HEAD~1撤销最近一次提交但保留修改在暂存区git reset --mixed HEAD~1撤销提交并保留修改在工作区默认git reset --hard HEAD~1⚠️ 彻底丢弃最近一次提交和所有修改危险git revert commit用一次新提交反向撤销某次历史提交安全git stash临时保存当前工作区的修改git stash pop恢复最近一次 stash 并删除记录git stash list查看所有 stash七、标签版本发布命令说明git tag查看所有标签git tag name创建轻量标签git tag -a v1.0 -m message创建带注释的标签git push origin tag推送单个标签git push --tags推送所有标签八、典型工作流示例场景1开始一个新功能bashgit checkout main git pull # 更新主分支 git checkout -b feature-xxx # 创建并切换到功能分支 # ... 修改代码 ... git add . git commit -m feat: xxx git push -u origin feature-xxx场景2同步远程最新代码bashgit pull origin main # 拉取并合并 # 或者更安全的做法 git fetch origin git diff origin/main # 先看差异 git merge origin/main # 确认后再合并场景3撤销不想提交的修改bashgit checkout -- file # 丢弃工作区修改旧语法 git restore file # 新语法Git 2.23场景4合并别人修改时解决冲突bashgit pull origin main # 出现冲突 → 手动编辑冲突文件 → 删除 标记 git add . git commit -m merge conflict resolved九、常用查看历史命令bashgit log --oneline --graph --all --decorate # 最推荐的可视化日志 git reflog # 查看所有 HEAD 移动记录可用于恢复丢失的提交 git status -sb # 简洁状态 分支信息十、别名设置提升效率bashgit config --global alias.co checkout git config --global alias.br branch git config --global alias.st status git config --global alias.lg log --oneline --graph --all # 之后就可以用 git st、git co、git lg 等记住三个核心区域text工作区 (Working Directory) ↓ git add 暂存区 (Staging Area) ↓ git commit 本地仓库 (Local Repository) ↓ git push 远程仓库 (Remote Repository)最常用的三个命令git status、git add、git commit— 掌握它们就覆盖了 80% 的日常场景。.gitignore用法关键点说明.gitignore的生效时机只在文件从未被追踪时生效已被追踪的文件.gitignore对它无效删除已被追踪的文件Git 会记录删除操作push 后的结果远程该文件也会被删除文件一旦被 Git 追踪过commit 过.gitignore就管不了它了。本地删除并提交后push 到远程会同步删除远程的该文件。如果你想让远程文件保留但本地删除需要执行git rm --cached从 Git 中移除追踪而不是直接rm。