我可以在`.gitignore`脚本中使用宏/变量吗?

时间:2018-03-01 21:21:11

标签: bash git variables macros gitignore

有没有办法在bash脚本中使用宏或变量(àla.gitignore)? gitignore docs没有提及任何内容,但我想我会问,以防万一有一些无证的功能和/或很酷的解决方法。一些人have asked关于在.gitignore中使用环境变量,但我想知道是否有任何类似宏或类似任何内容的支持。

用例

我有一个存储库,它正在对其目录结构/路径进行重构。某些路径在我的.gitignore脚本中以多种模式使用,因此能够在其中包含以下内容:

# set a variable
UNSTABLE_PATH=foo/bar

# use the variable in some patterns
$UNSTABLE_PATH/test_data
$UNSTABLE_PATH/test_output

是的,在你说之前,我知道聪明地使用glob和/或递归glob可能会覆盖我的用例。如果有一些简单的变量支持也会很好。虽然我想到了这一点,但我也想办法让git mv命令重写.gitignore中的匹配路径。

1 个答案:

答案 0 :(得分:0)

好吧,我将在评论中跳到语义辩论的最后,并将其留在此处:

.gitignore不是脚本,而是模式列表。正如您所期望的那样,它不支持变量。

如果你真的需要这种能力,我会从sass或更少的喜欢中得到一个提示:编写你自己的文件“忽略带有扩展语法的规则”并编写一个脚本,将其归结为适当的{{1}文件。

但是如果你想要我的两分钱,这看起来就像是通过在工作树之外移动一些东西来解决的另一种情况,这样工作树就可以成为工作树了。