检出远端分支是什么
要把远端分支拿到本地开发,先 fetch 更新远端引用,再用 git switch <名称>:当远端只有一个同名分支时,Git 会自动建立本地分支并绑定上游,这套行为叫 DWIM。想更明确时可以显式写 git switch -c <本地名> origin/<远端名>。如果远端有多个同名分支(多个远端),DWIM 会因无法判断而失败,此时必须指明来源。
基本信息
| DWIM | 唯一匹配的远端分支自动建本地跟踪 |
|---|---|
| 显式写法 | git switch -c feature/x origin/feature/x |
| 前提 | 先 fetch 更新远端引用 |
| 校验 | git branch -vv 查看上游与领先落后 |
| 平台 | 任意 Git 客户端 |
典型使用场景
- 接手他人分支继续开发,需要建立本地副本
- 评审他人分支前先检出到本地运行验证
- 从发布分支切出本地工作副本
- 仓库配置了多个远端,需要明确从哪个来源检出
- 新人克隆后按团队约定检出主开发分支
- 排查检出后 push 报错,确认上游是否绑定正确
常用示例
常用示例
git fetch # 先更新远端引用
git switch feature/login # DWIM:自动建本地并绑定上游
git switch -c feature/login origin/feature/login # 显式写法
git branch -vv # 复核跟踪关系
git switch -c release/2.4 origin/release/2.4两种检出方式
| 方式 | 特点 |
|---|---|
| git switch <名称> | 唯一匹配时自动建本地分支并设置上游 |
| git switch -c <本地> origin/<远端> | 显式指定来源,适合多远端或命名不同 |
团队约定本地名与远端名一致时,DWIM 让检出一步到位;命名需要不同时再用显式写法。
检出后先 git branch -vv 核对跟踪关系再开始提交,避免第一次推送落到错误的分支。
检出远端分支时会基于远端最新位置建本地分支,工作区若已有未提交改动可能被拒绝,操作前保持工作区干净。
检出后的核对动作
- git branch -vv 确认上游指向正确的远端分支
- git log --oneline -3 确认起点是预期的那次提交
- 确认本地分支名与团队命名约定一致
- 需要长期开发的分支再补一次 git pull 保持最新