linux - 是否可以根据环境变量使 .gitignore 可配置?

标签 linux git gitignore gitattributes

是否可以添加到 .gitignore 规则取决于环境变量?

例如

if -e $(ENV_VAR) "AAA"
!liba.so
else
liba.so

基本上我想要的是有一个存储库,这样if ENV_VAR = "AAA" 本地存储库将有 a.txt 并且如果 ENV_VAR 未设置 a.txt 将被删除。

最佳答案

答案是否定的。 Gitignore 规则是静态的。您可以通过动态创建 .gitignore 文件来扭转它。因此,您还将拥有动态创建的静态规则。

这可以在应用程序构建系统(例如 Makefile)中轻松完成。 .gitignore 文件可以在每次构建项目时重新构建。

示例生成文件:

all: my_app .gitignore

.gitignore: some deps
    cp my_static_gitignore_rules .gitignore
    echo 'dynamically_created_rule1' >> .gitignore
    echo 'dynamically_created_rule2' >> .gitignore

my_app: my_app.c
    ...

关于linux - 是否可以根据环境变量使 .gitignore 可配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17640160/

相关文章:

python - 使用 Python 包管理器 Poetry 时,我应该将哪些文件/目录添加到 .gitignore?

Git 忽略陌生事物

linux - 通过linux命令向端口发送数据

linux - 使用 gstreamer 的色度键网络摄像头视频

linux - Bash 参数扩展

php - cronjob 不与 codeigniter 一起运行

svn - git-svn 分支

git-p4 迁移不同子目录下的分支

显示其他开发人员提交的 Git Pull 请求

git - 使用 .git/info/exclude 为时已晚