git 远程名称中哪些字符是非法的?
我在 git 文档中没有找到它。
我在文档中也没有找到任何内容。那么我们就来看看源码吧。
当您尝试添加具有无效名称的遥控器或将遥控器重命名为无效名称时,您将收到一条错误消息,例如
致命:'foo@{bar' 不是有效的远程名称
让我们.
我们看到 Git 的做法有点倒退:它测试 (here https://github.com/git/git/blob/v2.11.0/builtin/remote.c#L192 for add
ing, here https://github.com/git/git/blob/v2.11.0/builtin/remote.c#L631用于重命名(mv
)) 无论refs/heads/test:refs/remotes/<the remote name>/test
是一个有效的获取引用,由下式确定valid_fetch_refspec(<the ref name>) https://github.com/git/git/blob/v2.11.0/remote.c#L615,这又调用parse_refspec_internal(...) https://github.com/git/git/blob/v2.11.0/remote.c#L496.
后者会进行许多检查,由于在我们的案例中给出了大部分输入,因此大多数情况下都会通过,但它也会call check_refname_format(...)在右手侧 https://github.com/git/git/blob/v2.11.0/remote.c#L562(即refs/remotes/<the remote name>/test
部分如果分裂于: https://github.com/git/git/blob/v2.11.0/remote.c#L515一切顺利)。
我想这意味着分支和标签不允许使用的字符和字符序列也禁止用于远程短名称。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)