初始化与配置仓库初始化、用户信息与远程地址配置
| 命令 | 用途与说明 |
|---|---|
| 在当前目录创建一个新的 Git 仓库。 | |
| 把远程仓库完整复制到本地。 可加 --depth 1 只拉取最新提交,适合大仓库。 | |
| 配置提交时使用的用户名。 | |
| 配置提交时使用的邮箱。 | |
| 列出当前生效的全部 Git 配置。 | |
| 列出已配置的远程仓库地址。 | |
| 为本地仓库添加名为 origin 的远程仓库。 |
日常操作查看状态、暂存、提交与推送
| 命令 | 用途与说明 |
|---|---|
| 查看工作区与暂存区中文件的改动情况。 | |
| 以简短格式列出文件改动。 | |
| 把当前目录及其子目录的更改加入暂存区。 指定文件时用 git add <file>,避免误提交无关文件。 | |
| 把暂存区内容提交为一个新版本。 | |
| 修改上一次提交的信息或把遗漏内容并入上一次提交。 | |
| 把本地提交推送到远程仓库。 首次推送新分支可用 git push -u origin <branch>。 | |
| 拉取远程提交并把自己的提交变基到最新,历史更清晰。 | |
| 只下载远程提交,不改变当前工作区。 |
分支与合并分支创建切换、合并与变基
| 命令 | 用途与说明 |
|---|---|
| 列出本地分支,当前分支前带星号。 | |
| 列出本地与远程全部分支。 | |
| 创建新分支并立即切换过去,推荐用于功能开发。 | |
| 切换到已存在的分支。 | |
| 删除已合并的分支;未合并需改用 -D 强制删除。 | |
| 把指定分支的提交合并到当前分支。 | |
| 把当前分支的提交重放到目标分支之上,形成线性历史。 |
撤销与修复回退提交、撤销更改与清理
| 命令 | 用途与说明 |
|---|---|
| 将工作区中的指定文件恢复为暂存区版本,丢弃该文件尚未暂存的改动。 | |
| 把文件从暂存区移回工作区,内容不变。 | |
| 撤销上一次提交,但保留改动到暂存区。 | |
| 撤销上一次提交,改动回到工作区(默认模式)。 | |
| 移动分支指针并重置暂存区和工作区;未提交的改动可能丢失。提交有时可通过 reflog 找回。 若已推送,应改用 git revert 而不是 reset。 | |
| 生成一个反向提交来抵消指定提交,适合已推送的历史。 | |
| 删除未跟踪的文件与目录,操作前先用 git clean -nd 预览将删除的路径。 | |
| 把未提交改动暂存起来,切分支后再用 git stash pop 恢复。 |
查看历史提交记录、差异与文件追溯
| 命令 | 用途与说明 |
|---|---|
| 每行一条简短提交记录。 | |
| 用图形直观展示分支走向与提交关系。 | |
| 查看工作区相对暂存区的改动;加 --staged 查看已暂存改动。 | |
| 查看某次提交的完整信息与改动内容。 | |
| 逐行显示文件每行代码的最后修改者与提交。 | |
| 按提交信息关键词搜索历史记录。 |
远程协作远程仓库、标签与多人协作
| 命令 | 用途与说明 |
|---|---|
| 推送分支并建立与远程分支的跟踪关系。 | |
| 删除远程仓库上的指定分支。 | |
| 列出仓库中的全部标签。 | |
| 创建附注标签并推送到远程。 | |
| 仅获取远程某个分支的最新提交。 |
选择命令可复制。
没有匹配的命令,换个关键词试试。
Git 命令速查
速查 41 条高频 Git 命令,按使用场景分类,支持关键词搜索与一键复制。
使用说明
三步完成操作
- 01 · 浏览分类
按初始化配置、日常操作、分支合并、撤销修复等分类查找命令。
- 02 · 搜索定位
输入关键词如 push 或 回退,即可过滤出匹配的命令。
- 03 · 复制命令
点击命令文本即可复制,先替换尖括号中的参数,再按项目情况使用。
常见问题
使用前先了解这些
switch 和 checkout 有什么区别?
git switch 是 Git 2.23 起专门用于切换分支的命令,语义清晰;checkout 职责较多,既切分支也恢复文件,新项目建议使用 switch 和 restore。
pull --rebase 与直接 pull 有何不同?
pull 会获取远程更新,再根据配置选择合并或变基;合并也可能是快进。--rebase 明确把本地提交重放到远程分支之后。
不小心 reset --hard 后还能找回吗?
只要提交还在 reflog 中就能找回:先用 git reflog 找到提交哈希,再用 git branch recovered <hash> 建立恢复分支。未提交的改动通常无法通过 reflog 恢复。