我正在尝试使用以下命令获取git存储库
git fetch -o origin (https://git.mydomain.com/path/to/repo.git)
但是会导致
fatal: No such file or directory
如果我将凭据这样添加到URL:
git fetch -o origin (https://username:[email protected]/path/to/repo.git)
它像一种魅力一样工作
我如何在没有凭据的情况下获取该网址?
编辑:由于这些命令是npm安装的一部分,因此您可以使用示例命令在其外部复制问题。
git clone -o origin https://git.mydomain.com/path/to/repo.git
应使用git credential storage进行管理,例如GCM(Git凭据管理器)for Windows或Mac/Linux。
并且如果您对多个URL具有相同的凭据,则使用Git 2.26(Q1 2020),用于凭据子系统的配置元素现在可以使用通配符模式指定该条目适用于哪一组URL。
由commit 46fd7b3参见commit 82eb249,commit 588c70e,commit 732f934,commit 3fa0e04,brian m. carlson (``)(2020年2月20日)。((由Junio C Hamano -- gitster
--在gitster
中合并,2020年3月5日)>
[commit 2cbb058:匹配配置时允许使用通配符模式
签名人:brian m。卡尔森
[在某些情况下,用户可能希望对通配符模式使用特定的凭据帮助程序,例如https://*.corp.example.com。
我们已经使用urlmatch代码处理了此代码,所以我们用它代替我们的自定义代码。
由于urlmatch代码在功能上是我们当前匹配的超集,因此不应存在以前匹配但现在不匹配的情况。
但是,除了通配符匹配之外,我们现在还使用部分路径匹配,如果辅助方法应用于远程URL的前缀(考虑路径组成部分),则可能会导致行为略有不同。
虽然有所不同,但无论如何,这可能都是人们想要的行为。
由于我们使用的是urlmatch代码,我们需要对进入URL的组件进行编码以进行匹配,因此请添加一个函数以对数据进行百分比编码并使用URL对其进行格式设置。
我们现在也不再需要自定义代码来匹配URL,因此我们将其删除。
此外,urlmatch代码始终会寻找最佳匹配,而我们希望凭据帮助者的所有匹配都可以保留现有行为。
让我们添加一个可选字段
credential
,该字段使我们可以控制我们想要哪些项目(在本例中为所有项目),并将其默认为其他用户已经存在的最匹配代码。