我的计算机使用的是Windows XP且没有Internet连接,只能访问网络驱动器。我想在网络驱动器上设置一个git存储库,然后从我的本地存储库推送到它,这样我就可以在一天结束时进入一台具有Internet连接的计算机并从网络驱动器推送到github。
我的问题是我无法从git访问网络驱动器。我把PortableGit放在网络驱动器上,但是git-bash.bat和git-cmd.bat死了“CMD不支持UNC路径作为当前目录。”。我尝试在git-cmd.bat中用“pushd”替换“cd”,但它不起作用。
BTW,我使用PortableGit,因为我的机器上没有管理员权限。
有什么想法吗?
答案 0 :(得分:48)
这对我有用:
git.exe clone "d:/dev/SDK" "//comp1/Proj/git/SDK/"
答案 1 :(得分:10)
只需使用UNC路径 - git
无关心cmd
可以做什么和不能做什么。
旧答案:将UNC路径绑定到驱动器号(或使用目录符号链接)。
答案 2 :(得分:6)
首先打开一个Windows控制台,Run-> cmd
pushd \\172.158.1.254\network_usb
现在您应该可以'cd'通过驱动器上的所有目录。您可以选择键入
git init --bare nameOfnewRepo.git
某处。
popd
现在打开git bash并cd到你要在网络驱动器上克隆repo的位置
git clone //172.158.1.254/network_usb/pathto/nameOfnewRepo.git
请注意,在git bash中,斜杠是向前的,在Windows控制台中是向后的。
答案 3 :(得分:2)
正如康斯坦丁所说,“// comp1 / Proj / git / SDK /”作为UNC路径可以正常工作。
其他人提到使用远程文件系统的性能不佳,我无法重现。克隆相同的repo需要3分45秒通过加密的VPN文件系统访问和3分钟25通过未加密的HTTP(Bonobo Git服务器)。 用于回购访问的安全通道+ Windows身份验证当然值得额外10%。
请注意,Cygwin的“git”命令不适用于此远程路径。与GitExtensions捆绑在一起的git.exe工作正常,VS2015也能正常工作。
答案 4 :(得分:0)
在msysGit邮件列表中讨论了一个类似(但不完全相同)的问题(当它处于活动状态时,问题跟踪器就会回来)。虽然这个问题是关于“Git bash here” - 来自UNC的特征,但解决方案可能类似。也许其中一些链接可以帮助您找到解决方案:
如果您找到解决方案,请考虑将修复程序提交回msysGit项目:)
答案 5 :(得分:0)
检查您是否确实可以访问本地驱动器。安装它将是最简单的解决方案。
答案 6 :(得分:0)
似乎有一个寄存器值允许在cmd上使用UNC路径。您可以通过在cmd上运行它来设置寄存器:
reg add “HKCU\Software\Microsoft\Command Processor” /v DisableUNCCheck /t REG_DWORD /d 0x1 /f