Heute mal wieder ein kleiner Schwenk aus der Rubrik "Kann man machen...muss man aber nicht!":
Heute sollte ich "mal eben schnell" einen Bug in einem Projekt beheben. Dazu wurde ich an ein Windows2000-Notebook gesetzt, mit dem ich die PHP-Dateien bearbeiten sollte. Leider gab es ausser Notepad kein dazu geeignetes Programm, also wollte ich flugs
UltraEdit installieren. Leider lässt sich das nicht ohne Administratorrechte installieren, und das Passwort hierfür war nicht herauszufinden. Also
Komodo probiert - selbes Problem. Phase5 liess sich zwar installieren, aber das fand ich hässlich und ausserdem hatte es keinen integrierten FTP-Zugang.
Weil ich zum Fixen des Bugs aber einen Editor mit direktem Zugriff zum Server benötigte, überlegte ich wie man sonst "live" die Dateien ändern könnte.
In meiner geistig umnachteten Vision dachte ich, man könnte ja per
WinSCP eventuell eine SSH-SFTP-Verbindung als Laufwerk mounten und so die Dateien bearbeiten. Leider bot WinSCP keine solche Möglichkeit, aber ein Feature namens "Synchronisierung" inklusive dem Feature eines überwachten Verzeichnisses.
Toll, dachte ich mir - sowas brauch ich doch. Kurz die Optionen des Dialogs gecheckt und mal direkt die Option "Bestätigungen unterdrücken" deaktivieren; schließlich will ich ja vor dem Löschen von Dateien was mitkriegen. Zusätzlich die Synchronisierungsrichtung auf "Beidseitig" geändert und okay geklickt. Nichts passiert. Naja, vielleicht muss ich ja vorher auf dem Notebook ein leeres Verzeichnis anlegen. Gedacht, getan, Prozess wiederholt und direkt mal auf "OK" geklickt, um zu sehen ob sich was geändert hat.
Juchheissa, es hat sich etwas getan. WinSCP fängt fleißig an, einen Prozessbalken mit diversen Dateien anzuzeigen. Als ich dann aber wahrnehme, dass bei jeder Datei ein "Deleting..." angegeben wird, packt mich die Panik, und ich breche ab. Schnell rufe ich den Dialog erneut aus und sehe, dass die Optionen "Bestätigungen unterdrücken" wieder aktiviert ist, und die Synchronisierungsrichtung auf "Remote" gesetzt ist.
Mit pochendem Herzen und roten Ohren muss ich dann zur Kenntnis nehmen, dass auf dem Server tatsächlich zwei Verzeichnisse gelöscht wurden.
Feines Programm, eine Synchronisierung mit einem leeren Verzeichnis mit standardmäßig deaktivierter Bestätigung so wunderschön durchzuführen.
Glücklicherweise waren die gelöschten Dateien einigermaßen zügig wieder hergestellt, aber so ein Missgeschick ist mir vorher noch nie passiert. Dank Murphy gab es natürlich auch keine Backups, aber anhand anderer kopierter Verzeichnisse liessen sich die (weniger wichtigen) gelöschten Dateien herstellen.
Fazit für Programmierer: Traut euren Benutzern nicht, fragt sie vor solchen fatalen Operationen lieber nochmal. Und deaktiviert Bestätigungsmeldungen nicht standardmäßig, das ist nicht DAU-freundlich.