这个问题在这里和这里以类似的形式出现,但它们似乎与我正在寻找的东西不相符.
我在StaticMatic中创建了一个项目,这是一个Ruby静态站点生成器.基本上,它只是一个带有Haml模板,Sass和CoffeeScript的src /目录.StaticMatic提供了一个开发服务器,可以将这些服务器编译为静态站点,以及在build /中生成静态站点的构建命令.
我对StaticMatic的修改是允许添加src/_modules/foo /,它可能包含src/_modules/foo/bar.haml.运行服务器或构建站点时,将在src/bar.haml创建一个符号链接,指向foo /中的文件.
到现在为止还挺好.(处理冲突等)
_modules /中单独目录背后的原因是它们可以作为git子模块进行跟踪,并由其他团队独立检出.从本质上讲,这允许多个团队在一个静态站点中的不同页面(实际上是JS应用程序)上工作,而不会复制主要布局等.
问题是,git想要将这些符号链接视为文件.例如,git status显示:
# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be commited)
#
# src/_modules/bar/foo.haml
# src/foo.haml
Run Code Online (Sandbox Code Playgroud)
......当我真的只是希望它展示src/_modules/bar/foo.haml和忽视时src/foo.haml
一种方法是让我的链接生成代码将链接附加到.gitignore,但是以编程方式搞乱.gitignore会让我觉得容易出错.(也许这种担忧是不合理的?)
我的理想修复方式如下:
[filetype = link]
Run Code Online (Sandbox Code Playgroud)
......在.gitignore.据我所知,这是不可能的,或者是这样吗?