意思是,有类似每个回购部分的东西[repo_url]
覆盖全局(不适用于特定存储库)选项。
[core]
filemode = false
editor = notepad
[repo "example.com/repo1.git"]
[core]
filemode = true
# editor = notepad
[repo "example.com/repo2.git"]
[core]
editor = vim
# filemode = false
在git中可以吗?
注意:我正在制作很多克隆(git clone
)我将在这样的全局配置中指定的存储库
使用 Git 2.36(2022 年第 2 季度),除了依赖本地文件夹之外,您还有另一种选择:使用“的配置文件的条件包含机制”[includeIf <condition>]
“学会根据以下情况做出决定URL与存储库交互的远程存储库的名称。
See commit 399b198, commit ed69e11 (18 Jan 2022) by Jonathan Tan (jhowtan).
(Merged by Junio C Hamano -- gitster -- in commit 13ce8f9, 09 Feb 2022)
config:如果远程 URL 与 glob 匹配,则包含文件
Signed-off-by: Jonathan Tan
Acked-by: Elijah Newren
此功能支持配置文件包含,条件是存储库是否具有 URL 与 glob 匹配的远程版本。
与我之前的工作类似远程建议的挂钩,主要动机是允许远程仓库管理员以更容易使用的方式提供推荐的配置(例如,通过包管理器可安装的包 - 例如,它可以包含有条件包含的文件和帖子-install 脚本,将 include 指令添加到系统范围的配置文件中)。
为了做到这一点,Git 在注意到第一个 URL 条件包含后重新运行配置解析机制,以便找到所有远程 URL,然后使用这些远程 URL 来确定是否执行第一个和所有后续包含。
不允许在任何 URL 条件包含文件中配置远程 URL。
config
现在包含在其man page:
hasconfig:remote.*.url:
该关键字后面的数据被提取到
是一个带有标准通配符和两个的模式
额外的,**/
and /**
,可以匹配多个
成分。
第一次看到这个关键字,其余的
将扫描配置文件中的远程 URL(无需
应用任何值)。
如果至少存在一个远程 URL
匹配此模式,则满足包含条件。
不允许此选项(直接或间接)包含的文件
包含远程 URL。
请注意,与其他includeIf
条件,解决这个条件
依赖于阅读本文时尚不知道的信息
健康)状况。
一个典型的用例是此选项作为
系统级或全局级配置,并且远程 URL 位于
本地级配置;因此在解决这个问题时需要提前扫描
健康)状况。
为了避免出现先有鸡还是先有蛋的问题
潜在包含的文件可能会影响此类文件是否可能被包含
包括,Git 通过禁止这些文件影响来打破循环
解决这些条件(因此,禁止他们
声明远程 URL)。
至于这个关键字的命名,是为了向前兼容
支持更多基于变量的包含条件的命名方案,
但目前 Git 仅支持上述的确切关键字。
config
现在包含在其man page:
; include only if a remote with the given URL exists (note
; that such a URL may be provided later in a file or in a
; file read after this file is read, as seen in this example)
[includeIf "hasconfig:remote.*.url:https://example.com/**"]
path = foo.inc
[remote "origin"]
url = https://example.com/git
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)