git——常见命令行
基础操作
| 命令 | 说明 |
|------|------|
| `git init` | 初始化新仓库 |
| `git clone <url>` | 克隆远程仓库 |
| `git status` | 查看工作区状态 |
| `git add <file>` | 添加文件到暂存区 |
| `git add .` | 添加所有修改到暂存区 |
| `git commit -m "message"` | 提交变更 |
| `git commit --amend` | 修改最后一次提交 |
---
分支管理
| 命令 | 说明 |
|------|------|
| `git branch` | 查看本地分支 |
| `git branch <name>` | 创建新分支 |
| `git checkout <branch>` | 切换分支 |
| `git checkout -b <new-branch>` | 创建并切换分支 |
| `git merge <branch>` | 合并分支 |
| `git rebase <branch>` | 变基操作 |
| `git branch -d <branch>` | 删除分支 |
---
远程操作
| 命令 | 说明 |
|------|------|
| `git remote -v` | 查看远程仓库 |
| `git fetch` | 下载远程变更(不合并) |
| `git pull` | 拉取并合并远程变更 |
| `git push` | 推送本地提交 |
| `git push -u origin <branch>` | 首次推送并建立追踪 |
---
撤销与回退
| 命令 | 说明 |
|------|------|
| `git restore <file>` | 撤销工作区修改 |
| `git restore --staged <file>` | 撤销暂存区修改 |
| `git reset --hard HEAD` | 回退到最后一次提交状态 |
| `git reset --hard <commit-id>` | 回退到指定提交 |
| `git revert <commit-id>` | 创建撤销某次提交的新提交 |
---
日志与比对
| 命令 | 说明 |
|------|------|
| `git log` | 查看提交历史 |
| `git log --oneline` | 简洁版日志 |
| `git log --graph` | 图形化显示分支 |
| `git diff` | 查看未暂存的修改 |
| `git diff --staged` | 查看暂存区的修改 |
---
高级操作
| 命令 | 说明 |
|------|------|
| `git stash` | 临时保存工作区修改 |
| `git stash pop` | 恢复暂存的工作 |
| `git tag <tagname>` | 创建标签 |
| `git cherry-pick <commit>` | 选择性合并提交 |
| `git rebase -i HEAD~3` | 交互式变基(修改历史) |
---
实用组合命令
```bash
# 强制推送(慎用!)
git push --force-with-lease
# 删除远程分支
git push origin --delete <branch>
# 查看文件修改历史
git blame <file>
# 清理已删除的远程分支记录
git fetch --prune
```
---
工作流示例
1. 日常开发流程:
```bash
git checkout -b feature/xxx # 创建功能分支
git add . && git commit -m "add feature" # 提交代码
git push -u origin feature/xxx # 推送到远程
```
2. 合并代码:
```bash
git checkout main
git pull origin main # 更新main分支
git merge feature/xxx # 合并功能分支
git push origin main
```
建议将常用命令保存为别名(如 `git config --global alias.co checkout`),可大幅提升效率。

浙公网安备 33010602011771号