我注意到,在从GitHub克隆存储库时,末尾缺少.git扩展名的URL仍然可以正确克隆。
例如,下面的命令:
git clone https://github.com/kach/nearley的功能与此地址相同:
git clone https://github.com/kach/nearley.git这个功能是由Git命令提供的,还是由服务器端的GitHub处理的?如果这是GitHub的一个特性,他们会在任何地方记录下来吗?
同样感谢的是关于他们如何或为什么实现这一点的任何声明。
发布于 2018-03-09 10:19:54
.git扩展表示一个裸存储库。What is a bare repository?
Git似乎并不关心您是否不为以这种方式命名的存储库提供.git扩展,但是如果您提供了它,并且存储库没有该扩展,那么您的克隆将失败。因此,似乎是Git而不是Github专门提供了这个特性。
有关更多评论,请参阅此other question。
还有Git docs。
发布于 2018-03-09 11:45:46
你可以跳过.git,git是一个版本控制系统,通常知道如何从它的名称中找到完整的存储库路径(没有'.git')。例如,golang语言的go get github.com/username/reponame命令:它将克隆该repo,即使没有扩展名也是如此。here引用。
有关更多评论,请参阅此other question。
发布于 2019-03-27 15:47:36
正如@Matt指出的那样,git似乎并不关心。然而,它似乎是由客户端处理的,而其他客户端库,如JGit,似乎确实关心它。我花了将近一个小时才弄清楚为什么我的Spring Config Server会在启动时抛出这个异常:
NoRemoteRepositoryException: ... <some-repo-url>/git-upload-pack not found
使用相同网址的git clone运行得很好。这只是在spring.cloud.config.server下配置的存储库URL中缺少的.git后缀-我太习惯于忽略它。
https://stackoverflow.com/questions/49185530
复制相似问题