@sergeyfilkin

Как можно держать репозитарий на виртуалке, а редактировать файлы на винде, чтобы не менялись права файлов?

Моя ОС Windows 7, а для разработки я использую виртуальную машину Virtualbox c Ubuntu 12.04. На виртуальном HDD есть репозиторий Git, файлы в котором я хотел бы редактировать из Windows.
Я настроил shared folder из интерфейса Virtualbox, но этим методом шарится только папка на хосте, а NTFS не поддерживает права доступа UNIX. Я скопировал репозиторий в расшаренную папку, и теперь `git status` на Ubuntu выдаёт множество изменённых файлов (изменились только права доступа). Я могу задать настройку git `git config core.fileMode false`, но это не совсем то, что мне нужно.
Вопрос к аудитории: как можно держать репозитарий на виртуалке, а редактировать файлы на винде, чтобы не менялись права файлов?
  • Вопрос задан
  • 2733 просмотра
Решения вопроса 1
@mayken
Samba решит вашу проблему. Сам пользуюсь этим методом. Через сетевую папку права не меняются.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@romanmd86
Vstav'te i host i guest v odnom LAN - Host-only adapter. Posle - samba ili nfs.
Ответ написан
Комментировать
silentvick
@silentvick
Сомневаюсь, что это возможно. Мне кажется, проще и правильней будет написать небольшой скрипт (shell или средствами языка/фреймворка/etc., который вы используете), выставляющий права "как надо" и положить его в репозиторий.
Ответ написан
Комментировать
Git распределенная система контороля версий, не нужно пользоваться ею как SVN. Клонируйте репозитории по необходимости, это же просто и можно делать локально.

Создайте в разделяемой папке bare репозиторий Git:

mkdir repo
cd repo
git init --bare


В Ubuntu добавьте в репозиторий ссылку на только что созданный разделяемый репозиторий и выполните в него push имеющихся коммитов.

git remote add origin [путь к папке разделяемого репозитория]
git push origin master #отправляем ветку master в удаленный репозиторий по ссылке origin


Теперь клонируем разделяемый репозиторий в Windows.

git clone [путь к разделяемому репозиторию]

и работаем в копии. Изменения отправляем и получаем командами push и pull.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы