Наши разработчики используют сочетание ОС Windows и Unix. Поэтому символические ссылки, созданные на машинах Unix, становятся проблемой для разработчиков Windows. В windows (msysgit) символическая ссылка преобразуется в текстовый файл с указанием пути к файлу, на который он указывает. Вместо этого я хотел бы преобразовать символическую ссылку в символическую ссылку Windows.
Решение (обновлено), которое у меня есть:
- Напишите post-checkout script, который будет рекурсивно искать текстовые файлы symlink.
- Замените их символической ссылкой Windows (используя mklink) с тем же именем и расширением, что и фиктивная "символическая ссылка"
- Игнорировать эти символические ссылки Windows, добавив запись в .git/info/exclude
Я не реализовал это, но считаю, что это надежный подход к этой проблеме.
Вопросы:
- Что, если таковые имеются, то вы видите этот подход?
- Является ли этот пост-checkout script даже выполнимым? то есть я могу рекурсивно узнать фиктивные "символические" файлы git создает?
- Кто-нибудь уже работал над такими script?