10.5 Git 内部原理 - 《引用规范》

[remote "origin"]
  url = https://github.com/schacon/simplegit-progit
  fetch = +refs/heads/*:refs/remotes/origin/*

引用规范的格式由一个可选的 + 号和紧随其后的 <src>:<dst> 组成, 其中 <src> 是一个模式(pattern),代表远程版本库中的引用; <dst> 是本地跟踪的远程引用的位置。 + 号告诉 Git 即使在不能快进的情况下也要(强制)更新引用。

  1. 如果想让 Git 每次只拉取远程的 master 分支,而不是所有分支, 可以把(引用规范的)获取那一行修改为只引用该分支:
fetch = +refs/heads/master:refs/remotes/origin/master
  1. 如果有某些只希望被执行一次的操作,我们也可以在命令行指定引用规范。
$ git fetch origin master:refs/remotes/origin/mymaster \
 topic:refs/remotes/origin/topic

你也可以在配置文件中指定多个用于获取操作的引用规范。

引用规范推送

$ git push origin master:refs/heads/qa/master

[remote "origin"]
    url = https://github.com/schacon/simplegit-progit
    fetch = +refs/heads/*:refs/remotes/origin/*
    push = refs/heads/master:refs/heads/qa/master

删除引用

$ git push origin :topic

或者(自 Git v1.7.0 以后可用):

$ git push origin --delete topic
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文汇总了Git的一些技巧 和 我在使用Git的过程中遇到的问题及解决方案 目录 1. 不显示中文[#1-%E4%...
    科研者阅读 5,245评论 0 1
  • 一个文件来保存 SHA-1 值,而该文件有一个简单的名字, 然后用这个名字指针来替代原始的 SHA-1 值,在 G...
    金樽明月阅读 2,144评论 0 0
  • 1 前言 Git使用比较灵活,达到相同结果有多种方式。 靠记忆不同场景下的命令组合,会停留在“知其然,不知其所以然...
    此间有道阅读 3,459评论 0 0
  • [TOC] Git 内部实现原理剖析[https://www.jianshu.com/p/8154ac47d406...
    Whyn阅读 4,143评论 2 1
  • 这篇文章本应该在6月份就完成,拖了4个月之后,终于鼓起勇气捡起来,实在惭愧。坚持写文章就像长跑,途中跑起来基本是靠...
    程序员BUG阅读 3,693评论 1 2