从本地服务器存储库执行GIT克隆时遇到的问题

时间:2012-08-29 06:05:51

标签: git version-control git-clone

我正在尝试将git存储库设置为服务器存储库,以便用户签入并检查其更改。

我正在尝试做一个poc,以便本地和远程存储库都在一台机器上。

以下是我创建存储库(作为远程服务器存储库)所做的一切:

  • 使用GIT Gui创建了一个存储库(现在我有一个带.git文件夹的目录)。
  • 运行命令 git --bare init --shared myRepo.git 使其无法推送到存储库
  • 现在我使用Windows共享和安全性共享了myRepo.git文件夹。
  • 然后我将此共享文件夹映射到网络驱动器z:

在位置d:/ myrepository我使用GIT Gui创建了一个存储库(本地,将在将要检入和退出服务器的所有计算机上)。

这里有一位新人GIT用户在我看来。我尝试了各种可能有意义的事情。请告诉我为什么我尝试的是对或错,如果你可以帮我解决。 这是我在本地(myrepository)上尝试的内容:

$ git clone \\z:\myRepo.git 
Cloning into 'myRepo'...
ssh: \\z: no address associated with name
fatal: The remote end hung up unexpectedly**

$ git clone file:///z:\myRepo.git
Cloning into 'myRepo'...
fatal: 'z:myRepo.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly**

$ git clone file:///myRepo.git
Cloning into 'myRepo'...
fatal: 'C:/Program Files/Git/myRepo.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly**

$ git clone git@\\z:\myRepo.git
Cloning into 'myRepo'...
ssh: \\z: no address associated with name
fatal: The remote end hung up unexpectedly**

$ git clone ssh://git@\\z:\myRepo.git
Cloning into 'myRepo'...
ssh: connect to host  port 22: Bad file number
fatal: The remote end hung up unexpectedly**

$ git clone ssh://z:\myRepo.git
Cloning into 'myRepo'...
ssh: connect to host  port 22: Bad file number
fatal: The remote end hung up unexpectedly**

$ git clone ssh://z:\myRepo.git
Cloning into 'myRepo'...
ssh: connect to host  port 22: Bad file number
fatal: The remote end hung up unexpectedly**

$ git clone \\z:\myRepo.git
Cloning into 'myRepo'...
ssh: \\z: no address associated with name
fatal: The remote end hung up unexpectedly**

$ git clone ssh://git@172.16.70.177/git1/myRepo.git
Cloning into 'myRepo'...
ssh: connect to host 122.16.30.127 port 22: Bad file number
fatal: The remote end hung up unexpectedly**

请告诉我需要做些什么才能让它发挥作用。

谢谢, Mayank Batra

2 个答案:

答案 0 :(得分:0)

试试这个:git clone z:\ 如果你正在使用git bash: git clone /z

在这种情况下你需要了解更多关于DOS的知识,而不是Git。 DOS文件路径就像我上面所示。

PS:git存储库与此类似:

COMMIT_EDITMSG HEAD           config         hooks          info           objects        refs
FETCH_HEAD     ORIG_HEAD      description    index          logs           packed-refs

答案 1 :(得分:0)

使用git bash,它应该是:

cd c:/path/to/parent/folder
git clone z:/myRepo
# or
git clone file:///z:/myRepo.git

假设目录中没有已存在repo文件夹" c:/path/to/parent/folder",其中repo即将被克隆。

使用cmd会话:

git clone z:\myRepo

git 1.9/2.0 (Q1 2014)不同,您可以指定克隆目的地尚不存在的路径。

所以:

git clone z:/myRepo c/path/to/parent/folder/myRepo

即使&{39; parent'和' folder'是尚不存在的两个目录


  

" git clone $origin foo\bar\baz"在Windows上无法创建主要目录(即道德等同于" mkdir -p")。

根据commit 0f52740 recent GitHub stafferMichael Haggerty (mhagger), Nov 2013 git imerge fame Sebastian Schuberth (sschuberth) patch查看Sebastian Schuberth (sschuberth)

safe_create_leading_directories():在Windows上,\可以分隔路径组件

  

克隆到目录" C:\ foo \ bar"来自Windows' cmd.exe在哪里   "富"还不存在,Git会抛出像

这样的错误
fatal: could not create work tree dir 'c:\foo\bar'.: No such file or directory
  

通过不将特定于平台的目录分隔符硬编码到safe_create_leading_directories()中来解决此问题。

     

此修补程序(包括其整个提交消息)源自{{3}}的修补程序。