Git 命令清单
常用 Git 命令速查,分支、提交、回滚、暂存、子模块全覆盖,复制即用。
广告位(百度联盟)
| 命令 | 说明 | 示例 | |
|---|---|---|---|
| git init | 初始化仓库 | git init | |
| git clone | 克隆远程仓库 | git clone https://github.com/user/repo.git | |
| git init --bare | 创建裸仓库(服务端) | git init --bare /srv/git/app.git | |
| git add -A | 暂存所有改动 | git add -A | |
| git add -p | 交互式暂存部分改动 | git add -p | |
| git commit -m | 提交并附说明 | git commit -m "fix: 修复登录跳转异常" | |
| git commit --amend | 追加到上一次提交 | git commit --amend -m "补充提交说明" | |
| git status | 查看工作区状态 | git status -sb | |
| git diff | 查看未暂存差异 | git diff | |
| git diff --cached | 查看已暂存差异 | git diff --cached | |
| git log --oneline | 简洁提交历史 | git log --oneline -10 | |
| git log --graph | 图形化分支历史 | git log --graph --oneline --all | |
| git branch | 列出 / 创建分支 | git branch -a | |
| git switch -c | 新建并切换到分支 | git switch -c feature/login | |
| git checkout -b | (旧式) 新建并切换 | git checkout -b hotfix/1.1 | |
| git merge | 合并分支(保留记录) | git merge --no-ff feature/login | |
| git rebase | 变基到目标分支 | git rebase main | |
| git rebase -i | 交互式整理提交 | git rebase -i HEAD~3 | |
| git reset --soft | 回退保留工作区 | git reset --soft HEAD~1 | |
| git reset --hard | 彻底回退到指定版本 | git reset --hard origin/main | |
| git revert | 生成反向提交 | git revert abc123 | |
| git stash | 暂存工作区改动 | git stash push -m "WIP-登录" | |
| git stash pop | 恢复暂存的改动 | git stash pop | |
| git stash list | 查看暂存列表 | git stash list | |
| git fetch -p | 拉取并清理远端分支 | git fetch -p | |
| git pull --rebase | 变基式拉取 | git pull --rebase origin main | |
| git push -u | 推送并跟踪上游 | git push -u origin main | |
| git push --tags | 推送所有标签 | git push --tags | |
| git remote -v | 查看远程地址 | git remote -v | |
| git remote add | 添加上游远程 | git remote add upstream https://github.com/o/r.git | |
| git tag -a | 创建附注标签 | git tag -a v1.2.0 -m "release" | |
| git cherry-pick | 摘取指定提交 | git cherry-pick abc123 def456 | |
| git clean -fd | 删除未跟踪文件 | git clean -fd | |
| git blame | 查看每行作者 | git blame -L 10,20 app.py | |
| git reflog | 查看引用日志 | git reflog | |
| git submodule add | 添加子模块 | git submodule add https://github.com/x/y lib/y | |
| git config | 设置全局用户信息 | git config --global user.email "me@it586.cn" |