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