繁体   English   中英

除了特定的子目录外,Git 忽略

[英]Git ignore except specific subdirectories

我看过一些关于如何忽略除某些子目录之外的所有内容的示例。

# Ignore Everything
foo/*
# Include sub directory
!foo/ccc/*

我也试过:

# Ignore Everything
foo/*
# Include sub directory
!foo/ccc/

更新

所以上面的代码有效,但是试图在另一个目录中排除另一个目录中的目录不起作用。 它仅适用于父目录和子目录。

# Ignore Everything
foo/*
# Include sub directory
!foo/ccc/aaa/ddd/ 

在我的 gitingore 中包含这个之后,我运行了一个git add --all并且我在git status没有看到任何文件。

所有帮助将不胜感激。

您必须取消忽略要取消忽略的路径中的每个目录。 类似以下的内容应该适用于您的情况:

# Ignore everything in foo
foo/*
# Except the ccc subdir
!foo/ccc

# Ignore everything in ccc subdir
foo/ccc/*
# Except the aaa subsubdir
!foo/ccc/aaa

# Ignore everything in aaa subsubdir
foo/ccc/aaa/*
# Except the ddd subsubsubdir
!foo/ccc/aaa/ddd

忽略规则以/*结尾很重要,因为这告诉 git 忽略文件夹中的所有内容,而不是文件夹本身,允许我们为特定子目录的忽略规则添加例外。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM