При поддержке: Pro.m — здесь продают неWindows компьютеры
Сегодня я расскажу о факте, который, вероятно, является банальным для аксакалов маковской среды, но может быть откровением для новичков. Речь пойдет о различиях в реализации замещения папок (директорий) в Mac OS и Windows.
Mac OS не объединяет содержимое папок при замещении в отличии от Windows! Директория будет переписана полностью вместе со всем содержимым.
Поясню на примере.
Пускай в папках RootFolder1 и RootFolder2 имеем по папке SubFolder (рис. 1).
Замечу, что в этих директориях присутствуют как файлы с одинаковыми именами (file2, file3), так и с уникальными (file1, file4).
Перетащим папку SubFolder с RootFolder2 в RootFolder1. Появится диалог. (рис. 2)
Нажимаем «Replace» и получаем на выходе следующую картину (рис. 3):
Как видим, папка была замещена полностью, а все ее содержимое переписано.
Посмотрим теперь, что произойдет в Windows.
Получаем предупреждение (рис. 4):
Заметьте, что здесь нас честно предупреждают, что некоторые файлы в замещаемой папке совпадают по имени с файлами из замещающей директории и они будут переписаны. Говорим «Для всех» и получаем следующее (рис. 5):
Как видим, содержимое папок было объединено, а те элементы, которые совпадали по имени были взяты из замещающей папки.
Для многих пользователей описанное поведение Mac OS будет весьма неожиданным и может повлечь за собой потерю данных. Лично у меня было два казуса.
Первый случай произошел у меня на работе, когда я еще только начинал свой путь в освоении яблочной операционки. Тогда я представил свои изменения в проекте в виде сложной структуры папок, в которой содержались измененные мною файлы и предложил более опытному разработчику заменить корневую директорию проекта приготовленной мною папкой. В ответ получил недоумевающий взгляд и объяснение, что все файлы проекта будут уничтожены.
Второе происшествие случилось при работе с бекапом одного из моих сайтов. Я попросил службу технической поддержки моего хостера восстановить сайт из бекапа за предыдущий день. В результате моя проблема не была решена, а после долгих поисков причины я понял, что файлы, которые «поламали» мой сайт не были удалены. На мой вопрос, как это вы возобновлялись, «вежливая» девушка объяснила, что при восстановлении происходит мерж бекапа и существующих файлов. Видать у них там Windows. 🙂
Кстати, учтите, что при работе с фтп-клиентом под Mac OS он будет замещать папки на сервере традиционным маковским способом, а «виндовый» фтп-клиет — традиционным способом для Windows.
Реализовать мерж содержимого замещаемой и замещающей папок можно с помощью терминала и команды: cp -R source_folder target_folder
Удачи, и пускай ваши ожидания всегда совпадают с результатами ваших действий!
Да-да-да, сам пару раз «накалывался» по виндузятной привычке. Хорошо, что в любом случае я не много потерял 🙂