Gitignore всички obj директории с изключение на .m и .h файлове в тях

Тъй като Xamarin Studio е боклук, не мога просто да добавя obj към .gitignore, защото всички .h и .m файлове, генерирани за/от Xcode, се съхраняват някъде в obj директорията на съответните проекти. Тези .h и .m файлове трябва да се проследяват в хранилището, в противен случай компилацията може да се счупи за някои членове на екипа.

Как да игнорирам obj директориите на проекти на решение, с изключение на всички .h и .m файлове, съдържащи се в тях?

опитах

obj
!*.h
!*.m

но правилата за изключване не работят. Виждал съм obj/* препоръчан в този случай, но когато го променя на това:

obj/*
!*.h
!*.m

всички obj директории и тяхното съдържание се проследяват.

Как просто да игнорирам всичко във всички obj директории с изключение на .h и .m файлове?


person Distortum    schedule 29.08.2014    source източник


Отговори (2)


Вашият .gitignore файл изрично включва .h и .m файлове, докато вие искате да включите .h и .m файлове в директорията obj:

obj/*
!obj/*.h
!obj/*.m

Обърнете внимание, че все още трябва да git add obj, за да проследите съответните файлове в него.

(Проверено с git 1.7.11.3 на RHEL 6.5)

person Mureinik    schedule 29.08.2014
comment
obj/* като правило не игнорира например нищо в MySolution/MyProject/obj/, докато obj като правило го прави, но тогава правилата за изключване не работят. - person Distortum; 29.08.2014

Пробвали ли сте .gitignore файла, предложен тук: gitignore.io? Има един за XamarinStudio, може да ви помогне да решите проблема си.

Надяваме се, че тази връзка ще ви помогне.

person Joël Salamin    schedule 29.08.2014
comment
Генерираният .gitignore за XamarinStudio игнорира всичко във всички obj директории, както можете да видите тук. -1 - person Distortum; 29.08.2014
comment
Опитвали ли сте да поставите gitignore за XamarinStudio на основно ниво и друг файл на gitignore в корена на вашия проект с `!obj/? посочено? - person Joël Salamin; 29.08.2014
comment
Те просто биха се отменили взаимно. - person Distortum; 29.08.2014
comment
Никога не съм използвал Xamarin Studio, можете ли да ни предоставите структурата на папките на вашето git repo, за да разберем по-добре къде да поставим файла(ите) на gitignore? - person Joël Salamin; 29.08.2014