As regras do seu .gitignorearquivo se aplicam apenas a arquivos não rastreados. Como os arquivos nesse diretório já foram confirmados em seu repositório, você deve desestabilizá-los, criar uma confirmação e enviar por push para o GitHub:
git rm -r --cached some-directory
git commit -m 'Remove the now ignored directory "some-directory"'
git push origin master
Você não pode excluir o arquivo do seu histórico sem reescrever o histórico do seu repositório - você não deve fazer isso se mais alguém estiver trabalhando com o seu repositório ou se estiver usando-o em vários computadores. Se você ainda deseja fazer isso, pode git filter-branchreescrever a história - há um guia útil para isso aqui .
Além disso, observe que a saída de git rm -r --cached some-directoryserá algo como:
rm 'some-directory/product/cache/1/small_image/130x130/small_image.jpg'
rm 'some-directory/product/cache/1/small_image/135x/small_image.jpg'
rm 'some-directory/.htaccess'
rm 'some-directory/logo.jpg'
O rmfeedback é do git sobre o repositório; os arquivos ainda estão no diretório de trabalho.