Ответ 1
Вам нужно привязать ваш *
, в противном случае он будет продолжать соответствовать всем файлам даже в неопытных каталогах.
например.
/*
!.gitignore
!*.tt
!/Static/
У меня есть папка, которая является только папкой шаблона T4, но она выводит файлы, сгенерированные кодом в другие каталоги. Поэтому я хочу игнорировать все, кроме файлов *.tt(например, *.cs, *.master, *.resx и т.д.). Есть одна добыча. У меня есть подпапка под названием static, которая содержит файлы, которые никогда не должны игнорироваться.
/Test.tt
/Test.cs
/TestHtml.tt
/TestHtml.html
/Static
/Sub/Sub.cs
/Sub/Sub2/Sub2.cs
/Sub3/Sub4/Sub5/Sub5.html
Я хочу игнорировать /Test.cs и/Test.html, но включать все остальные файлы. Я пробовал следующее:
/.gitignore
# Ignore all
*
# But not these files...
!.gitignore
!*.tt
/Static/.gitignore
!*.*
#also have just tried blank
Я не могу получить git, чтобы игнорировать правильные вещи... Основная проблема - это "рекурсивное исключение", которое я хочу для Static/..
Вам нужно привязать ваш *
, в противном случае он будет продолжать соответствовать всем файлам даже в неопытных каталогах.
например.
/*
!.gitignore
!*.tt
!/Static/
Что-то вроде:
/*
!.gitignore
!*.tt
!/Static/
должен работать.
Посмотрите на мой ответ ниже, чтобы сделать его более сложным, если вы хотите подкаталог unignore
в какой-либо другой папке, когда вы игнорируете все остальное.