Git ignore no ignora las carpetas / archivos especificados

Quiero que mi .gitignore ignore ciertas carpetas y archivos, así que se me ocurrió lo siguiente:

*.class

# usual java ignores
bin/
.metadata

# Maven
*/target/*
target/*
/target/
*/deploy/*
deploy/*

# src-gen folder is populated by the command of protobuf, these files should not be pushed
src-gen/*

# eclipse generated stuff
dependency-reduced-pom.xml

# we shouldn't have .jar files in our repository, 
# apart from these 5 jars which are vital for our build process
*.jar
!/projectName/bundle/**/*.jar

# For Unix editors 
# sometimes make file copies ending
# with ~
# To ignore them use:
*~

# For Mac
.DS_Store
._*

# For markdown read me files
.README.md.html

Sin embargo, después de ungit status No puedo ver nada para eliminar como salida. Tenga en cuenta que este es un submódulo, si eso es importante. Y quiero esto.gitignore para ignorar todo sin especificar ningún nombre de carpeta, ya que no quiero ningún hardcoding.

Aquí está la estructura de carpetas que tengo:

+ parentRepo
  + thisRepo
    + .gitignore
    + projectName
      + src-gen
      + target
      + deploy
      + dependency-reduced-pom.xml
      + bundle
        + system
          + 1.jar
          + 2.jar
          + 3.jar
          + 4.jar
          + 5.jar

Respuestas a la pregunta(2)

Su respuesta a la pregunta