在git中,如何取消设置每个子模块的core.fileMode?

问题描述 投票:0回答:1

这是我尝试的结果:

$
git submodule foreach --recursive "git config --unset core.fileMode"
Entering 'buildSrc'
fatal: run_command returned non-zero status for buildSrc

我的问题是:

  • 非零状态是什么原因?
  • 如何解决?
git chmod
1个回答
0
投票
$ git init test-git
$ cd test-git
$ git config core.fileMode
true
$ git config --unset core.fileMode; echo $?
0
$ git config --unset core.fileMode; echo $?
5

也就是说,您无法取消未设置的值。这是您第一个问题的答案。

对于第二个问题:你需要忽略错误:

git submodule foreach --recursive "git config --unset core.fileMode || :"

:
在 shell 中的意思是 noop,“什么都不做”。即,命令是“
git config --unset
,或者出现错误时不执行任何操作”。

© www.soinside.com 2019 - 2024. All rights reserved.