docker-sync unison conflict Дублирование файла может приводить к ошибке
Primary tabs
При работе с докером на линуксе и на винде одновременно (на виндоус был docker-sync) наблюдали проблему с тем, что некий php класс как будто уже был где-то определен:
Cannot declare class .... because the name already in use
на виндоус (git pull не помогал), при этом на линуксе все было нормально:
Появилась гипотеза, что проблема в докер-синке
Причина
Причину не выясняли, что-то со слиянием версий файлов и м.б. работой unison
Решение
Открываем баш контейнера и идем в папку с файлом, с которым связана ошибка, и выполняем ls -la:
-rw-r--r-- 1 www-data www-data 6396 Sep 17 11:58 ContractLine.php
-rw-r--r-- 1 www-data www-data 36419 Sep 18 01:49 'ContractVersion (conflict on 2020-09-18).php'
-rw-r--r-- 1 www-data www-data 38477 Sep 18 13:43 ContractVersion.php
После чего все должно заработать.
-- как видим тут появился ContractVersion (conflict on 2020-09-18).php -- файл, контент которого также судя по всему включался движком и конфликтовал с ContractVersion.php, далее просто удаляем этот файл (если причина конфликтного копирования не интересует):
rm "ContractVersion (conflict on 2020-09-18).php"
(в нашем случае файл отображался и в контейнере и снаружи, но удаление снаружи не приводило к удалению в контейнере, поэтому в инструкции мы удаляем его в контейнере).
- Log in to post comments
- 1009 reads