Как git клонировать репо в окнах с другого ПК в локальной сети?
У меня есть этот git repo "c:/xampp/htdocs/**" на моем основном ПК, а его IP-адрес - 192.168.0.6. Теперь я хочу git клонировать это репо с ubuntu-сервера, который работает на Vmware Player на моем основном ПК.
Я сделал
git clone \\192.168.0.6\c:\xampp\htdocs\****
и
git clone //192.168.0.6/c:/xampp/htdocs/****
от ubuntu-сервера и не работал.
fatal: could not create work tree dir '****'.: Permission denied
Что я не так понял?
что мне делать?
Ответы
Ответ 1
Чтобы получить доступ к репо, вы должны либо поделиться им по 192.168.0.6
, либо быть тем же самым пользователем домена, что и тот, который владеет файлом на 192.168.0.6
.
Если вы делитесь каталогом на 192.168.0.6
(например, с общим именем myrepo
), вы получаете доступ к нему с помощью //192.168.0.6/myrepo
.
Если вы вошли в свой ящик с пользовательской подпиской, которая известна в 192.168.0.6
, вы можете попробовать получить доступ к репо через административные акции:
//192.168.0.6/c$/xampp/htdocs/...
Всегда используйте косые черты.
Другой альтернативой будет использование SSH для доступа к удаленной машине.
Ответ 2
Убедитесь, что ваша папка c:/xampp/htdocs (или ее подпапки) совместно используется в Windows, поэтому вы можете перемещаться по сети по этому адресу:
\\192.168.0.6\htdocs
Затем вы клонируете с помощью файла:////. Обратите внимание, что есть четыре слэша:
git clone file:////192.168.0.6/htdocs/somerepo.git
Ответ 3
Вы должны использовать команду git daemon
для размещения вашего репозитория, например так:
На вашем компьютере, который будет действовать как сервер:
git daemon --base-path=<path_to_folder_containing_project_folder> --export-all
(обратите внимание, что path_to_folder_containing_project
- это папка, содержащая папки ваших проектов, она предоставит все проекты в этой папке)
В вашем клиенте:
git clone git://<local ip>/<project name>
Клонированное хранилище будет иметь источник, указывающий на сервер в вашей локальной сети, поэтому вы можете использовать git remote set-url origin
чтобы указать его исходный источник.
Возможно, вы захотите запустить git daemon
с --verbose
чтобы получить больше подробностей в случае возникновения проблем.
Ответ 4
Использование проводника (smb) для монтирования удаленного репозитория как сетевого ресурса является самым простым способом. Я не совсем уверен, но я думаю, что вы, возможно, ошибаетесь. Вместо этого попробуйте file:///192.168.0.6\c:\xampp...
.
Для вас могут быть две вещи:
- У вас нет разрешения на чтение в удаленном репозитории
- У вас нет разрешения на запись в том месте, где вы хотите создать свой репозиторий (текущий рабочий каталог или каталог, который вы указываете как второй аргумент для git clone)
А также проверьте, работает ли ваш samba-сервер для обычного доступа к файлам.
Ответ 5
Чтобы сделать репозиторий git в локальной сети Windows, вам нужно сделать следующее:
-
Создать новое репо
git init --bare projectName.git
-
Поделитесь этой папкой (projectName.git) с нужными вами пользователями
- Найдите ваш компьютер ip с помощью команды ipconfig (например, 192.168.2.101)
-
Запустите эту команду с пользовательской машины
git clone//192.168.2.101/projectName.git
Примечание: откройте \\192.168.2.101 в finder, чтобы увидеть правильный путь к projectName.git(например,//192.168.2.101/some/path/projectName.git)
Ответ 6
Недавно я столкнулся с этой ошибкой при попытке клонировать хранилище на удаленном компьютере на локальный компьютер в той же сети LAN. Решение состояло в том, чтобы сначала убедиться, что местоположение диска на удаленном компьютере имеет правильные права доступа для локального компьютера (чтение/запись, которое можно установить с помощью параметров общего доступа к Windows). Скопируйте путь к удаленному хранилищу. На вашем локальном компьютере вставьте путь в окно проводника Windows. Затем скопируйте его адрес каталога и вставьте его в любой браузер. Теперь вы должны получить ссылку с именем хоста и правильным форматом URL клонирования. Используйте эту ссылку, чтобы клонировать хранилище на локальном компьютере.
Надеюсь это поможет. Приветствия.
Ответ 7
"У меня есть несколько разных компьютеров, которые я использую дома, и я хотел настроить GIT, что я могу получить доступ к своему коду из любого из них. Мне потребовалось немного, потому что я был слишком привычный для работы с моделью клиент-сервер, где я обозначаю один компьютер как" сервер ", в котором хранится репозиторий, а все остальное - клиент. Вместо этого GIT похоже больше работает как инструмент слияния, и каждая локальная копия является его собственный" мастер ". Как только я понял это, выясняется, что настройка GIT очень проста и просто нужна GIT и SSH".
Чтобы узнать больше, вы можете проверить эту ссылку:
http://blog.lazyhacker.com/2010/04/setting-up-git-for-home-network.html