Git does not seem to properly handle the pattern [AB] but it does handle [ab]. Here is the demonstration of the bug: C:\gitbug>git --version git version 2.50.1.windows.1 C:\gitbug>echo [ab] > .gitignore C:\gitbug>type .gitignore [ab] C:\gitbug>git check-ignore -v a .gitignore:1:[ab] a C:\gitbug>git check-ignore -v b .gitignore:1:[ab] b C:\gitbug>git check-ignore -v A .gitignore:1:[ab] A C:\gitbug>git check-ignore -v B .gitignore:1:[ab] B C:\gitbug>echo [AB] > .gitignore C:\gitbug>type .gitignore [AB] C:\gitbug>git check-ignore -v a C:\gitbug>git check-ignore -v b C:\gitbug>git check-ignore -v A C:\gitbug>git check-ignore -v B C:\gitbug>git config core.ignorecase true C:\gitbug>ver Microsoft Windows [Version 10.0.19045.6093] C:\gitbug> Rex McCarthy