Подтвердить что ты не робот

Git по пути UNC

У меня есть компьютер с Windows XP и нет подключения к Интернету, только доступ к сетевому диску. Я хотел бы создать репозиторий git на сетевом диске, а затем нажать на него из моего локального репозитория, поэтому я могу в конце дня перейти на компьютер с подключением к Интернету и нажать с сетевого диска на github.

Моя проблема: я не могу получить доступ к сетевому диску из git. Я поместил PortableGit на сетевой диск, но git - bash.bat и git -cmd.bat умереть с "CMD не поддерживает UNC-пути как текущие каталоги.". Я попытался заменить "cd" на "pushd" в git -cmd.bat, но он не работает.

Кстати, я использую PortableGit, так как у меня нет прав администратора на моей машине.

Любые идеи?

4b9b3361

Ответ 1

Просто используйте UNC-путь - git не заботится о том, что cmd может и не может сделать.


Старый ответ: привяжите путь UNC к букве диска (или используйте символическую ссылку каталога).

Ответ 2

Это сработало для меня:

git.exe clone "d:/dev/SDK" "//comp1/Proj/git/SDK/"

Ответ 3

Сначала откройте консоль Windows, Run- > cmd

pushd \\172.158.1.254\network_usb

теперь вы должны иметь возможность "cd" через все каталоги на диске. При желании вы можете ввести git init --bare nameOfnewRepo.git где-то.

popd

Теперь откройте git bash и cd в том месте, где вы хотите клонировать репо на сетевом диске

git clone //172.158.1.254/network_usb/pathto/nameOfnewRepo.git

Обратите внимание, что в git bash косые черты идут вперед и в консоли Windows назад.

Ответ 4

Как сказал Константин, "//comp1/Proj/ git/SDK/" отлично работает как UNC-путь.

Другие говорили о низкой производительности с использованием удаленной файловой системы, которую я не могу воспроизвести. Клонирование одного и того же репо заняло 3min45 через зашифрованный доступ к файловой системе VPN и 3min25 через незашифрованный HTTP (Bonobo Git Server). Безопасный канал + проверка подлинности Windows для доступа репо, безусловно, стоит дополнительных 10%.

Обратите внимание, что команда Cygwin "git" не работает с этим удаленным путем. git.exe, который поставляется вместе с GitExtensions, отлично работает, VS2015 тоже отлично работает.

Ответ 5

Там аналогичная (но не совсем такая же) проблема обсуждалась в списке рассылки msysGit (и обратно, когда она была активной, проблема-трекер). Хотя этот вопрос касается "Git bash здесь" -feature от UNC, решение может быть похоже. Возможно, некоторые из этих ссылок помогут вам найти решение:

И если вы найдете решение, попробуйте отправить исправление обратно в проект msysGit:)

Ответ 6

Проверьте, действительно ли у вас есть доступ к локальному диску. Установка его была бы самым простым решением.