我在zip文件中继承了项目的代码,我的第一步是尝试将其放入SCM系统。该代码在Visual Studio中开发,使用NuGet和TypeScript。
TypeScript编译器生成我不想跟踪的*.js
和*.js.map
个文件。由于该项目专门使用TypeScript,我希望通常排除所有*.js
fies。
但是,必须仍然包含NuGet放在名为Scripts
的文件夹中的第三方JavaScript库。
我在存储库.gitignore
# Exclude JavaScript other than from NuGet packages
# This is a TypeScript project so JavaScript should not be used
*.js
*.js.map
!Scripts/*.js
这可以排除所有JavaScript文件。但是,它不包括Scripts文件夹中的JavaScript文件。
由于TypeScript文件存在于许多目录中,因此不需要枚举排除JavaScript文件的所有目录。
我发现的所有类似问题都倾向于忽略所有但未接受的文件扩展名,这不是我想要做的。
答案 0 :(得分:0)
您需要使用**/*.js
# Exclude JavaScript other than from NuGet packages
# This is a TypeScript project so JavaScript should not be used
*.js
*.js.map
!Scripts/**/*.js
PS:确保你有最新的git,因为它刚刚添加。
答案 1 :(得分:0)
我发现以下似乎可以正常工作(git版本1.9.4.msysgit.0):
*.js
*.js.map
!**/Scripts/**/*.js
!**/Scripts/**/*.js.map