我如何从另一台机器'git clone'?

时间:2010-05-11 05:00:06

标签: git git-clone

在一台计算机(IP地址192.168.1.2)上,我通过

创建一个Git存储库
$ cd /home/hap/working
$ git init
$ (add some files)
$ git add .
$ git commit -m 'Initial commit'

我在同一个Wi-Fi网络上有另一台机器。如何从其他机器克隆?

3 个答案:

答案 0 :(得分:77)

你需要使用git + ssh URL来执行Git克隆:

git clone git+ssh://hap@192.168.1.2/~/working

要打破它:

  • git+ssh告诉Git您想使用ssh连接到Git存储库。
  • hap是您的用户名(我假设您的问题基于主目录)。
  • 192.168.1.2是您要连接的计算机
  • ~/working是远程计算机上Git存储库的路径(因此~是您的主目录)

其他一些注意事项:

  • 您需要在具有Git存储库的计算机上启用ssh服务器
  • 您需要知道用户hap
  • 的密码

答案 1 :(得分:2)

我认为在两台机器上都安装了Git。

现在你做的事情取决于你安装的服务,也就是你如何从一台机器连接到另一台机器。

最简单的情况是,当您要从克隆的计算机上运行sshd时,您可以从要将克隆到的计算机上进行ssh >到要克隆的机器上。

如果可以的话

ssh 192.168.1.2

(或者如果你在另一台机器上有不同的用户名ssh user@192.168.1.2),那么你应该可以通过SSH进行克隆,比如Josiah wrote

git clone git+ssh://hap@192.168.1.2/~/working

如果要继续在计算机之间进行提取/推送,则应为SSH配置公钥身份验证,而不必在每次提取时提供密码。


如果您没有在源计算机上安装sshd,则可以使用“智能”HTTP协议进行克隆,如果您安装了Web服务器并且可以安装CGI脚本(请参阅git-http-backend联机帮助页),或者您可以如果您安装了Web服务器,则使用“dumb”HTTP协议克隆,但只能提供静态文件(您需要先在源存储库中运行git update-server-info),或者如果您有,则可以使用rsync进行克隆它安装。

作为最后的手段,您可以使用“git bundle”创建一个可以移动的存档,例如,使用USB pendrive并从中进行克隆。

答案 2 :(得分:-1)

我认为人们正在寻找这个答案。终端中的以下命令将登录到另一台计算机并克隆现有的repo。在终端的当前路径位置(首先是cd到首选位置)。

git clone username@12.345.67.891:/home/path/to/repo.git

如果你现在没有IP地址。使用ping来确定服务器的IP。在IP地址之后不要忘记使用:,然后写下绝对路径。