程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了无法取消忽略 GIT 子目录大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决无法取消忽略 GIT 子目录?@H_944_1@ 开发过程中遇到无法取消忽略 GIT 子目录的问题如何解决?下面主要结合日常开发的经验,给出你关于无法取消忽略 GIT 子目录的解决方法建议,希望对你解决无法取消忽略 GIT 子目录有所启发或帮助;

很简单,我希望取消忽略被忽略目录中的子目录。

我的.gitignore

app/migrations/
!app/migrations/config/Migrations/*

它不起作用,如果我删除第一行 app/migrations 被忽略,但第二行没有按预期工作。我也试过:

!app/migrations/config/*

但似乎无法取消忽略?

更新

这似乎是 GIT 的一个缺点,它没有正确支持不可忽略的子目录。令人惊讶的是,这样的标准工具无法支持如此简单的配置,无论是疏忽还是错误。

解决方法@H_944_1@

这会起作用,并且从根 .gitignore 开始是可以高效运行的最短序列:

app/migrations/*
!app/migrations/config
app/migrations/config/*
!app/migrations/config/Migrations

(把第二行写成 !app/migrations/config/ 可能更清晰明确,但只要 config 一个目录,效果是一样的。看我的补充说明如下。)

简而言之,您必须忽略然后取消忽略每个子目录。

这是正确的,因为当目录实际上被忽略时(通过最后一个匹配的 .gitignore 规则),这使 Git 可以完全忽略对目录的扫描.因此,它永远不会看到该目录中的任何 文件或子目录。然而,它非常有效:Git 从来不需要打开目录!这就是为什么这条规则如此运作的原因。

然而,这并不能 100% 工作,因为 app/migrations/config/* 在它应该只是 app/migrations/config/Migrations 时未被忽略。

是因为你说要这样做。说做你的意思,你就可以了。 :-)

更重要的是,这不仅过于复杂,而且导致了一个几乎不可读且臃肿的 git-ignore 文件 - 6 行只是为了取消忽略一个子目录。

好吧,四行。也就是说,我同意这过于复杂。 Git 应该能够识别这种模式:

dir/*
!dir/sub/something

并自动插入适当的 !dir/sub/。同样适用于:

dir/*
!dir/sub1/sub2/something

在这里,Git 可以根据需要自动插入 !dir/sub1/!dir/sub1/sub2/ 规则,并根据需要使用相应的“忽略其中的所有文件”规则。如果 /dir/sub 和/或 dir/sub1 是文件而不是目录,这些取消忽略插入应以 dir/sub1/sub2 结尾。

,

正如更新中提到的,我想要实现的目标没有得到适当的支持,我几乎可以实现我想要的:

app/migrations/
!app/migrations
app/migrations/config/
!app/migrations/config
app/migrations/config/Migrations/
!app/migrations/config/Migrations

简而言之,您必须忽略然后取消忽略每个子目录。然而,这并不能 100% 工作,因为 app/migrations/config/* 在它应该是 app/migrations/config/Migrations 时未被忽略。更重要的是,这不仅过于复杂,而且导致了一个几乎不可读且臃肿的 git-ignore 文件 - 6 行只是为了取消忽略一个子目录。

希望这能帮助那些被这个限制绊倒的人。

,

根据 Git 文档:

如果文件的父目录被排除,则无法重新包含该文件。

如果您取消忽略所有文件夹直到您想要的文件夹,则可以实现您想要的:

app/migrations/*

!app/migrations/config/*

app/migrations/config/*

!app/migrations/config/Migrations/*

可能与 https://stackoverflow.com/a/5534865/2543566 重复

大佬总结

以上是大佬教程为你收集整理的无法取消忽略 GIT 子目录全部内容,希望文章能够帮你解决无法取消忽略 GIT 子目录所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。