gpt4 book ai didi

git - 如何强制 git 将点文件添加到存储库

转载 作者:IT王子 更新时间:2023-10-29 01:04:22 26 4
gpt4 key购买 nike

Git 似乎总是忽略这些。

当我键入 git add . 时,GIT_DIR 中的点文件被添加,但不是来自子目录。另一方面,git add subdir/.dotfile 将不起作用。

我尝试了 git add -f 并将 !.* 放入 GIT_DIR/.git/info/exclude

最佳答案

git add .git add dir/.dot 对我来说可以很好地使用我现在手边的 Git 的 1.6.6.1 和 1.7.0 版本.

% git --version
git version 1.6.6.1
% git ls-files -o
.baz/baz
.foo
bar/.bar
quuux/quuux
quux
% git add .
% git ls-files -o
% git ls-files
.baz/baz
.foo
bar/.bar
quuux/quuux
quux

您使用的是什么版本的 Git?您的子目录实际上是子模块(独立管理)吗?

默认情况下不排除“点文件”,但也许您的系统、存储库或工作树上的一些配置已将它们设置为这种方式。如果它们出现在 git ls-files --exclude-standard -oi 中,那么它们将被忽略,“!.*”是“忽略”它们的正确方法。但要有效,该模式必须在正确的位置。忽略按以下顺序处理:

  • .gitignore 立即包含目录,然后
  • .gitignore 父目录(每个父目录,直到存储库根目录),然后
  • $GIT_DIR/info/exclude,然后
  • git config core.excludesfile 报告的文件(可以通过
    • $GIT_DIR/config,
    • $HOME/.gitconfig,或者
    • 系统配置文件(尝试 GIT_EDITOR=echo git config --system --edit 获取其路径名)。

当路径名与一个文件中的模式匹配时,将不会查询后续文件。每个文件中的最后一场比赛“获胜”。 $GIT_DIR/info/exclude 中的模式永远不会覆盖 .gitignore 文件中的模式。因此,如果文件被忽略(根据 git ls-files --exclude-standard -oi)并且 $GIT_DIR/info/exclude 中有“!.*”是无效的,然后检查所有适用的 .gitignore 文件以查找罪魁祸首。

关于git - 如何强制 git 将点文件添加到存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2352455/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com