📌  相关文章
📜  如何忽略 gitignore 中的文件夹重复 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:24:46.433000             🧑  作者: Mango

如何忽略 gitignore 中的文件夹重复 - Shell-Bash

在使用 Git 进行版本控制时,我们通常会把一些临时文件、编译过程中产生的文件以及不需要上传到仓库中的其他文件忽略掉。

通常情况下,在 gitignore 文件中添加需要忽略的文件或文件夹路径就能解决问题了。但是,有时候我们需要在某个文件夹下忽略所有文件或文件夹,但又想在该目录下添加单个文件或文件夹,这时我们需要一些特殊的配置。

解决方案
方法一:使用 ! 来包含特定文件或文件夹

我们可以在忽略整个文件夹的规则后,在该文件夹名称前添加叹号(!)来包含需要用到的那个文件或文件夹,例如:

build/        # 忽略 build 目录下所有内容

!build/main.c # 但是不忽略 build 目录中的 main.c
方法二:使用 / 来忽略目录但不忽略子目录

我们可以在忽略整个文件夹的规则后,在该文件夹名称后添加斜杠(/)来忽略该文件夹下的文件,但不忽略子目录,例如:

build/*        # 忽略 build 目录下所有的文件

!build/src/   # 但是不忽略 build/src 目录
方法三:使用 ! 来忽略具体规则

如果同时包含以上两种情况的话,使用方法一和方法二可能会存在问题。这时我们需要在忽略整个文件夹的规则后再次使用!来表示不忽略具体规则。例如:

build/**     # 忽略 build 目录下所有内容包括子目录

!build/main.c # 但是不忽略 build 目录中的 main.c

!build/src/   # 但是不忽略 build/src 目录
结语

以上是三种常见的忽略特定文件或文件夹的方法。我们可以根据实际情况选择合适的方法来忽略特定文件或文件夹,从而达到更优美的代码管理。