在本地网络上进行Git克隆/拉取[关闭]


17

我正在尝试使用Ubuntu Quantal在另一台PC中克隆/拉存储库。我以前在Windows上已经做到了,但是我不知道ubuntu的问题是什么。我尝试了这些:

git clone file:////pc-name/repo/repository.git
git clone file:////192.168.100.18/repo/repository.git
git clone file:////user:pass@pc-name/repo/repository.git
git clone smb://c-pc/repo/repository.git
git clone //192.168.100.18/repo/repository.git

我总是得到:

Cloning into 'intranet'...
fatal: '//c-pc/repo/repository.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

要么

fatal: repository '//192.168.100.18/repo/repository.git' does not exist

更多:

  • 另一台PC拥有用户名和密码
  • 不是网络问题,我可以访问并ping它。
  • 我刚安装git做的apt-get install git(已安装依赖项)
  • 我从终端运行git(我没有使用git-shell)

是什么原因造成的,以及如何解决此问题?任何帮助将是巨大的!

更新

我已经在Windows上克隆存储库,使用git clone //192.168.100.18/repo/intranet.git没有问题。因此,该仓库可以访问并且存在!也许问题出在用户凭证上?


我不是,如果这个问题属于这里很确定,但我看到的SF类似的问题
托马斯拉米雷斯

Answers:


26

这取决于您如何配置服务器来提供内容。

如果超过ssh:

git clone user@192.168.100.18:repo/repository.git

或者网络服务器正在提供内容(http或https)

https://user@192.168.100.18/repo/repository.git

或通过文件路径提供:

git clone file://path/to/repo

或如果服务器正在运行git守护程序:

git clone git://192.168.100.18/repo

3
在Windows上,我正在使用进行克隆git clone //192.168.100.18/repo/repository.git,但是我以前登录了192.168.100.18该机,所以是file://这样吗?
托马斯拉米雷斯

1
有用的答案,谢谢!要克隆位于我使用的Windows共享文件夹中的存储库git clone file://\\\PC1\path-to-repo-dir
Ivan Ferrer Villa

@IvanFerrerVilla几乎是,实际路径是:file:///\\PC1\path-to-repo-dir
Mikl X

@MiklX,您将如何添加用户名和密码?
m4l490n19年

13

该手册git-clone说:

Git natively supports ssh, git, http, https, ftp, ftps, and rsync protocols

请注意,SMB不在列表中。

git在Windows上运行时,该//host/path语法有效是因为OS本身支持该语法-SMB远程路径可以在可以使用本地路径的任何地方使用。在UNIX中则不是这种情况,因为SMB是外来事物,并且//等效/于路径名解析算法。

挂载远程文件系统,然后您就可以使用git(以及系统上的所有其他工具)可以理解的unix样式的路径名来引用它。

有关安装smbfs的信息:https ://askubuntu.com/questions/137011/how-to-mount-a-samba-shared-folder-ubuntu-x-ubuntu


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.