有没有办法将本地创建的别名推送到远程存储库?
我已经检查了远程分支v1.0。
我已经为本地副本创建了别名(green_horn),如下所示:
git symbolic-ref refs/heads/green_horn refs/heads/v1.0
我可以将其推回遥控器,以便下次从远程退出的其他用户可以使用此链接吗?
答案 0 :(得分:1)
简短的回答是否定的。传输协议不支持任何重要且有用的符号引用。 HEAD
符号引用在较新版本的Git中通过git remote set-head
得到部分支持,但仅限于"从远程"获取信息。方向,而不是在"发送信息到远程"方向。
这实际上并不是一个很大的损失,因为符号引用实际上只对特殊名称HEAD
表现良好。特别是,如果您要求Git删除您的示例green_horn
名称,则会删除v1.0
而不是green_horn
! (我自己认为这是一个错误,但我不确定Git维护者是否将其视为错误或功能。)
为了设置或操作符号引用,您必须具有对遥控器的其他形式的访问权限。这就是为什么,例如,GitHub提供了一个非Git接口(浏览器/ REST API)来调整GitHub托管存储库的HEAD
符号引用的目标。
术语说明:这不是别名(在Git中专门针对git alias
和[alias]
配置部分),它是&#39; sa < em>符号引用。 (直到我仔细阅读整个问题,我才有点困惑,因为你确实把它称为两件事。)