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`),可大幅提升效率。

posted @ 2025-04-07 11:21  末叶da  阅读(19)  评论(0)    收藏  举报