Задать вопрос
volego
@volego
Fullstack web-разработчик

Почему Windows 10 не понимает символических ссылок Linux?

Есть совместный web-проект, работа над которым ведётся разработчиками под Linux и под Windows.
Разработчик под Linux создаёт символическую ссылку из одного (публичного) каталога проекта в в другой (не доступный для web). Разработчик под Windows скачивает обновление git-ветки и видит что в публичной папке появился "файл" ссылки (без расширения, внутри текстом относительная ссылка стоит), но при этом магии не происходит, и windows не понимает что это символическая ссылка. В то же время если сделать mklink, то выведется сообщение, что "невозможно создать файл, так как он уже существует", а если указать какое-то другое имя - то ссылка создается (как ярлык) и символическая ссылка начинает работать, но нужно чтобы у обоих разработчиков были одинаковые адреса.... как заставить windows понимать файл символической ссылки из linux? ... важно отметить, что цель символической ссылки - чтобы web-сервер Nginx понимал обращение по адресу символической ссылки к файлам, которые на самом деле "лежат в другом месте".
  • Вопрос задан
  • 1337 просмотров
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Merion Academy
    Администрирование MS Windows Server
    1 месяц
    Далее
  • Нетология
    Инженер по автоматизации
    13 месяцев
    Далее
  • Skillbox
    Системный администратор с нуля
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 3
saboteur_kiev
@saboteur_kiev Куратор тега Windows
software engineer
потому что windows умеет работать с NTFS, а не posix-файловыми системами.
Чотбы понимал, надо юзать встроенный WSL или не юзать виндовс.
Почитайте про то, как устроена файловая система Windows и Линукс, и поймете, что git не будет переносить сущности линукса на винду.
Ответ написан
Комментировать
SagePtr
@SagePtr
Еда - это святое
Это уже вопрос не к Windows, а к git-клиенту под Windows, который использует не все возможности файловой системы.
Ответ написан
Комментировать
@Vitsliputsli
Не надо заставлять Windows это понимать. Не используйте ссылки в коде проекта, они там не нужны.

цель символической ссылки - чтобы web-сервер Nginx понимал обращение по адресу символической ссылки к файлам, которые на самом деле "лежат в другом месте".

Если вы используете ссылки на сервере, чтобы переключаться на новые версии кода, то это не имеет никакого отношения к самому коду. Если вы используете ссылки на сервере, чтобы построить какой-то роутинг, то вы явно что-то делаете не так.

В крайнем случае, не работающая ссылка не отменяет, что файл существует по оригинальному пути.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Монетка Екатеринбург
от 130 000 до 160 000 ₽
Гринатом Петрозаводск
До 80 000 ₽
Алабуга Екатеринбург
от 127 500 ₽