有没有办法将本地创建的别名推送到远程存储库?远程存储库分支上的GIT符号参考(别名)?
我已经签出了远程分支v1.0。
我已经创建别名(green_horn)的本地副本是这样的:
git symbolic-ref refs/heads/green_horn refs/heads/v1.0
我可以推回遥控,使这一环节将可用于其他用户从远程对检查出下次?
有没有办法将本地创建的别名推送到远程存储库?远程存储库分支上的GIT符号参考(别名)?
我已经签出了远程分支v1.0。
我已经创建别名(green_horn)的本地副本是这样的:
git symbolic-ref refs/heads/green_horn refs/heads/v1.0
我可以推回遥控,使这一环节将可用于其他用户从远程对检查出下次?
简短的回答是否定的。传输协议不支持任何重要且有用的符号引用。 HEAD
符号引用部分支持Git的新版本,通过git remote set-head
,但仅限于“从远程获取信息”方向,而不是在“将信息发送到远程”方向。
这实际上并不是一个很大的损失,因为符号引用实际上只对特殊名称HEAD
有效。特别是,如果您要求Git删除您的示例green_horn
名称,它将删除v1.0
而不是green_horn
! (我自己认为这是一个错误,但我不确定Git维护者是否认为它是一个bug或一个功能。)
为了设置或操作符号引用,您必须有其他访问远程的形式。这就是为什么,例如,GitHub提供了一个非Git接口(浏览器/ REST API)来调整GitHub托管的存储库的符号参考目标HEAD
。
术语注:这不是一个别名(其在GIT中特指git alias
和[alias]
配置部分),这是一个符号引用。 (在我读完整个问题之前,我有点困惑,因为你确实称之为两件事情。)