Für unseren Web-Stack wechseln wir von einem Windows Server zu CentOS. Um die Entwicklung zu vereinfachen, verwenden wir Vagrant, um CentOS-VMs lokal auszuführen. Wir verwenden die Funktion " Synchronisierte Ordner" von Vagrant , damit Entwickler ihre bevorzugten IDEs auf ihrem Host-Computer verwenden können. Wir stellen jedoch fest, dass in diesem Setup eine wichtige Funktion fehlt: die Groß- und Kleinschreibung des Dateisystems.
Der synchronisierte Ordner in der VM übernimmt anscheinend die Eigenschaften des Dateisystems des Hosts. Wenn ich also von einem Windows-Computer oder sogar OSX aus entwickle, unterscheidet das Dateisystem nicht zwischen Groß- und Kleinschreibung. Dies ist ein großes Problem, da unsere Produktionsserver reine CentOS sein werden, und das Dateisystem wird Groß- und Kleinschreibung sein.
Die Groß- und Kleinschreibung ist einer der Hauptgründe, warum wir eine lokale VM haben wollten. Wir möchten verhindern, dass "es auf meinem Computer funktioniert!"
Einige Problemumgehungen, die wir in Betracht gezogen oder ausprobiert haben:
- Verwenden Sie lsyncd, um von der Vagrant-Freigabe zu einem Speicherort innerhalb der VM zu synchronisieren, bei dem zwischen Groß- und Kleinschreibung unterschieden wird
- Das Aktualisieren von Dateien auf dem Host scheint nicht die Ereignisse in der VM zu generieren, die lsync abhört
- Erstellen Sie auf dem Host eine Partition, bei der zwischen Groß- und Kleinschreibung unterschieden wird
- (Funktioniert nicht für Windows)
- Verwenden Sie Samba
- Dies mag eine Option sein, aber wir haben sie noch nicht überprüft.
Gibt es einen besseren Weg? Beachten Sie, dass Entwickler Windows, OS X und Ubuntu verwenden und die Lösung überall funktionieren muss.