好的,我给你整理一篇涵盖各种工作场景的 Git 指令大全,从新手到进阶都够用,而且每条都有简明说明,方便快速查阅。
一、基础操作
操作 | 指令 | 说明 |
---|
初始化仓库 | git init | 在当前目录初始化一个 Git 仓库 |
克隆仓库 | git clone <repo_url> | 克隆远程仓库到本地 |
查看状态 | git status | 查看当前分支状态、未提交文件等 |
查看日志 | git log | 查看提交历史 |
查看简洁日志 | git log --oneline --graph --all | 图形化显示提交历史 |
二、分支管理
操作 | 指令 | 说明 |
---|
查看分支 | git branch | 查看本地分支 |
查看远程分支 | git branch -r | 查看远程分支 |
创建分支 | git branch <branch_name> | 新建本地分支 |
切换分支 | git checkout <branch_name> | 切换到指定分支 |
创建并切换 | git checkout -b <branch_name> | 新建并切换分支 |
删除本地分支 | git branch -d <branch_name> | 删除本地分支 |
删除远程分支 | git push origin --delete <branch_name> | 删除远程分支 |
合并分支 | git merge <branch_name> | 将指定分支合并到当前分支 |
变基 | git rebase <branch_name> | 将当前分支基于指定分支重新整理提交 |
三、提交与版本控制
操作 | 指令 | 说明 |
---|
添加文件 | git add <file> | 添加单个文件到暂存区 |
添加所有文件 | git add . | 添加所有修改文件 |
提交 | git commit -m "message" | 提交暂存区到本地仓库 |
修改提交信息 | git commit --amend | 修改上一次提交信息 |
查看差异 | git diff | 查看工作区与暂存区差异 |
查看已暂存差异 | git diff --staged | 查看已暂存的改动 |
四、远程仓库操作
操作 | 指令 | 说明 |
---|
查看远程仓库 | git remote -v | 查看远程仓库地址 |
添加远程仓库 | git remote add origin <url> | 添加远程仓库 |
推送分支 | git push origin <branch_name> | 推送本地分支到远程 |
拉取分支 | git pull | 从远程拉取并合并到本地 |
拉取并重置 | git fetch origin && git reset --hard origin/<branch_name> | 强制同步远程分支,覆盖本地 |
五、标签管理
操作 | 指令 | 说明 |
---|
查看标签 | git tag | 查看本地所有标签 |
创建标签 | git tag <tag_name> | 创建轻量标签 |
创建带注释标签 | git tag -a <tag_name> -m "message" | 创建带注释标签 |
推送标签 | git push origin <tag_name> | 推送标签到远程 |
推送所有标签 | git push origin --tags | 推送所有本地标签到远程 |
六、撤销操作
操作 | 指令 | 说明 |
---|
撤销修改 | git checkout -- <file> | 丢弃工作区修改 |
撤销暂存 | git reset HEAD <file> | 将暂存区改动撤回到工作区 |
回退提交 | git reset --soft HEAD^ | 回退上一次提交但保留修改 |
回退提交并丢弃 | git reset --hard HEAD^ | 回退上一次提交并丢弃修改 |
还原文件到某版本 | git checkout <commit_hash> -- <file> | 恢复文件到指定版本 |
七、其他高级操作
操作 | 指令 | 说明 |
---|
查看提交历史某文件 | git log -- <file> | 查看指定文件的提交历史 |
比较两个分支 | git diff branch1..branch2 | 对比两个分支的差异 |
查看提交图 | git log --graph --oneline --all | 可视化分支和合并历史 |
删除本地未跟踪文件 | git clean -f | 删除未跟踪的文件 |
删除未跟踪目录 | git clean -fd | 删除未跟踪的文件夹 |
💡 工作场景小技巧
- 多人协作:
git fetch origin git rebase origin/main git push origin your_branch
保持本地分支与远程主分支同步,避免 merge 冲突。
- 紧急修复 bug:
git checkout main git pull git checkout -b hotfix/xxx # 修改代码 git commit -am "fix bug" git push origin hotfix/xxx
- 回滚到稳定版本:
git log --oneline git checkout <commit_hash> git checkout -b temp-branch
可以安全测试旧版本而不破坏主分支。
发表回复