Git Submodules conflictivo gitignore

Tengo un repository en el que ignoro un directory completo, sin embargo, hay un directory individual allí que quiero que sea un submodule. Así que mi file ignorar Git tiene la línea,

wp-content/plugins/ 

Estaba planeando agregar la línea

 !wp-content/plugins/my-plugin 

Entonces, solo rastrearía el código del submodule, ¿correcto?

Así que intenté agregarlo como un submodule y me dieron un post de "use -f flag". Así que lo hice. Ahora el estado de git muestra ese complemento a pesar de que el directory aún se ignora.

¿Lo obliga el -f a anular las directivas de ignorar git? Y si es así, ¿puedo simplemente omitir el! como en mi file de ignorar y cometer todo?

Gracias.

Si esto no ha cambiado desde " Git ignora todo excepto la subcarpeta ", tus reglas de ignorar serían:

 wp-content/plugins/* !wp-content/plugins/my-plugin 

Tenga en count que no usaría una barra inclinada (como lo hizo) para my-plugin , ya que agregar un submodule agregaría una input de gitlink en el índice, llamada my-plugin .

Estás confundiendo carpetas y submodules, pero en realidad son dos cosas diferentes. Si desea que ese complemento exista en su repository como un submodule, no debe ignorarse allí (ya que los submodules son entidades diferentes en su repository por layout).

Lo que debe hacer desde aquí para solucionar esta situación, es mover temporalmente la carpeta my-plugin fuera del repository por completo. A continuación, elimine la línea !wp-content/plugins/my-plugin de su file .gitignore , ya que ya no es necesario y confirme ese estado de su repository.

Ahora asegúrese de que su my-plugin esté en un repository separado (como se requiere para que se agregue como un submodule) y agregue ese submodule a su repository principal. Eso debería hacer el truco.