我有大约 40 个 git 存储库,其中大多数都有一个.git-blame-ignore-revs
用于与git blame
. blame.ignorerevsfile=.git-blame-ignore-revs
因此,我没有使用 本地配置,而是将其应用到我的全局git 配置中。
但是,少数没有此类文件的存储库会受到它的影响:git blame
在它们上运行会导致fatal: could not open object name list: .git-blame-ignore-revs
.
有没有办法告诉 git 读取此类文件(如果存在),否则忽略它?这将是理想的:设置简单,但如果不存在这样的文件也不引人注目。
注意:拥有可选 文件很有用的另一个原因.git-blame-ignore-revs
是,几乎所有 git 存储库都是在没有这样的文件的情况下创建的,只有在稍后才会添加它。然而,当二分旧的提交时,我们最终可能会返回到文件存在之前的touch
某个点,然后我们必须完成二分,然后再次删除它才能返回到 HEAD 提交。即使我对文件使用本地配置,这种极其烦人的情况仍然会发生。出于这个原因,我确实认为默认行为应该是忽略该文件(如果它不存在)。
phd*_*phd 15
有没有办法告诉 git 读取此类文件(如果存在),否则忽略它?
没有。要么使用
git config --local blame.ignoreRevsFile .git-blame-ignore-revs
Run Code Online (Sandbox Code Playgroud)
代替--global
。或者使用
git config --local blame.ignoreRevsFile ""
Run Code Online (Sandbox Code Playgroud)
在那些不存在该文件的存储库中。空文件名意味着“不使用任何文件”。
或者创建空.git-blame-ignore-revs
文件。
更新。使用新的临时存储库进行测试:
git init test-git
cd test-git
git config --global blame.ignoreRevsFile test
git config --show-origin blame.ignoreRevsFile
file:/home/phd/.gitconfig test
git config --local blame.ignoreRevsFile ""
git config --show-origin blame.ignoreRevsFile
file:.git/config
Run Code Online (Sandbox Code Playgroud)
更新2
git blame testfile
fatal: could not open object name list: test
Run Code Online (Sandbox Code Playgroud)
哎哟!
归档时间: |
|
查看次数: |
7187 次 |
最近记录: |