首页/开发/Git 与协作速查/refspec 引用映射语法
Git 基础与命令88 条

refspec 引用映射语法

refspec 描述「抓取什么、放在哪」:[+]<源>:<目标>;默认把远端分支映射到 refs/remotes/<远端>/ 下形成跟踪分支。

Git 与协作速查开发更新于 2026-10-12
语法[+]<源引用>:<目标引用>
+允许非快进更新目标引用
配置键remote.<名称>.fetch

常用示例

常用示例
git fetch origin main:refs/remotes/origin/main
git fetch origin +refs/heads/*:refs/remotes/origin/*
git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'
git fetch origin feature:local-feature
本地能 git log origin/main 就是因为默认 refspec 建立了 refs/remotes/origin/main 引用。

易错点

  • 只写源不写目标时结果进 FETCH_HEAD(临时记录),不会生成稳定引用
  • 手改 refspec 后 git branch -r 的可见范围随之变化,调试时先看配置

数据来源与参考

  • Git 官方文档:git-fetch(refspec)
  • Pro Git 2nd Edition · 2.5 远程仓库的使用
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌