Чи є спосіб зрозуміти, чому якийсь файл ігнорується git (тобто яке правило у .gitignoreфайлі викликає ігнорування файлу)?
Уявіть, що у мене є такий (або набагато складніший сценарій, із сотнями папок і десятками .gitignoreфайлів:
/
-.gitignore
-folder/
-.gitignore
-subfolder/
-.gitignore
-file.txt
Якщо я запускаю git add folder/subfolder/file.txtgit, то можна поскаржитися на його ігнорування:
The following paths are ignored by one of your .gitignore files:
folder/subfolder/file.txt
Use -f if you really want to add them.
Чи є спосіб дізнатися, яке з усіх можливих .gitignoreмає правило ігнорувати цей файл, а також показати це правило? Подібно до:
The following paths are ignored by your folder/.gitignore file (line 12: *.txt)
folder/subfolder/file.txt
Use -f if you really want to add them.
Або просто:
$ git why-is-ignored folder/subfolder/file.txt
folder/.gitignore:12:*.txt
GIT_TRACE_EXCLUDE=1 git statusнезабаром з'явиться додатковий спосіб налагодження .gitignoreправил. Дивіться мою відредаговану відповідь нижче
git check-ignoreнезабаром (git1.8.5 / 1.9) з'явиться--no-indexопція. Дивіться мою відповідь нижче