Git - 忽略项目中除项目的特定子目录之外的其他任何地方完成的工作?



如果我有一个项目:

project/
- A
- B
- C

如果我想隔离目录"A",如何设置 git,以便我可以忽略除"A"之外在其他地方完成的任何其他工作?

显然,我想忽略在"项目/B"、"项目/C"中添加或修改的任何文件,以及通常添加或修改为"项目/"的任何文件,显然除了"A"。


我为什么要这样做?

我想这样做的原因是因为A,B,C不相互依赖。我想避免合并包含旧版本B的A版本的可能性,因为从那里开始事情变得混乱。

这个错误显然是可以避免的,但我想设置我的项目,所以这是不可能的。


我尝试过:

我想到的是在此模式中的每个分支中使用 .gitignore 文件(位于 @ project/.gitignore(:

# project/.gitignore of branch_name => DIR_NAME
/*
!/DIR_NAME/

这是行不通的,因为如果我要将任何分支合并到 master 中,我会与不同的项目/.gitignore 文件发生冲突。同样,我可能会想出一种方法来避免每次我想合并时都合并 .gitignore 文件,但是有更好的方法或官方方法来达到我正在寻找的效果。

要忽略其他项目,请创建一个根级.gitignore文件并添加以下行:

project/B/
project/C/

要验证是否忽略了其他项目,可以使用git status --ignored

有关详细信息,请参阅 https://git-scm.com/docs/gitignore。

相关内容

最新更新