Ich habe hier einen ähnlichen Fall gefunden, wo in Laravel standardmäßig .gitignore
alles mit einem Asterix ignoriert, dann das public-Verzeichnis überschreibt. (Dies ist auch die gleiche Lösung wie die Hauptantwort von @Chris Johnsen, vielleicht nur etwas schlanker und prägnanter.)
*
!public
!.gitignore
Dies reicht nicht aus, wenn Sie auf das im OP-Szenario stoßen.
Wenn Sie bestimmte Unterordner von public
commiten möchten, zum Beispiel in Ihrem public/products
-Verzeichnis möchten Sie Dateien einschließen, die eine Unterordner-Ebene tiefer sind, z.B. um public/products/a/b.jpg
einzuschließen, werden sie nicht korrekt erkannt, selbst wenn Sie sie speziell hinzufügen wie !/public/products
, !public/products/*
, usw..
Die Lösung besteht darin, sicherzustellen, dass Sie für jede Pfadstufe einen Eintrag hinzufügen, um sie alle zu überschreiben.
*
!.gitignore
!public/
!public/*/
!public/products/
!public/products/*
!public/products/*/
!public/products/*/
!public/products/*/*