无法克隆我的Git存储库

3

我已在我的生产服务器上设置了第一个Git仓库,成功地将其克隆到子域(我想用作暂存服务器)。现在我想将它克隆到Github和我的本地计算机,但我无法做到。我按照Github提供的步骤尝试了所有克隆协议。以下是我尝试过的一些方法的小概述。

Kasper-Srensens-MacBook-Pro:wordpress Kasper$ ssh kasperso@kaspersorensen.com
kasperso@kaspersorensen.com's password: 
Last login: Tue Feb 15 15:35:13 2011 from 0x57368359.sdbnqu1.dynamic.dsl.tele.dk
kasperso@kaspersorensen.com [~]# cd www/wp-content/
kasperso@kaspersorensen.com [~/www/wp-content]# git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   backup-d2490/
#   backup-db/
#   blogs.dir/
#   bte-wb/
#   index.php
#   sunrise.php
#   uploads/
nothing added to commit but untracked files present (use "git add" to track)
kasperso@kaspersorensen.com [~/www/wp-content]# logout

Connection to kaspersorensen.com closed.
Kasper-Srensens-MacBook-Pro:wordpress Kasper$ git clone git://kaspersorensen.com/wp-content.git
Cloning into wp-content...
kaspersorensen.com[0: 74.220.202.12]: errno=Operation timed out
fatal: unable to connect a socket (Operation timed out)
Kasper-Srensens-MacBook-Pro:wordpress Kasper$ git clone ssh://kaspersorensen.com/wp-content.git wp-content/
Cloning into wp-content...
Kasper@kaspersorensen.com's password: 
Permission denied, please try again.
Kasper@kaspersorensen.com's password: 
Permission denied, please try again.
Kasper@kaspersorensen.com's password: 
Permission denied (publickey,password).
fatal: The remote end hung up unexpectedly
Kasper-Srensens-MacBook-Pro:wordpress Kasper$ No! I'm nor writing the password worng. It's crazy!
-bash: No!: command not found
Kasper-Srensens-MacBook-Pro:wordpress Kasper$ ssh kasperso@kaspersorensen.com
kasperso@kaspersorensen.com's password: 
Last login: Tue Feb 15 15:40:27 2011 from 0x57368359.sdbnqu1.dynamic.dsl.tele.dk
kasperso@kaspersorensen.com [~]# cd www/wp-content/
kasperso@kaspersorensen.com [~/www/wp-content]# git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   backup-d2490/
#   backup-db/
#   blogs.dir/
#   bte-wb/
#   index.php
#   sunrise.php
#   uploads/
nothing added to commit but untracked files present (use "git add" to track)
kasperso@kaspersorensen.com [~/www/wp-content]# git remote add origin git@github.com:kasperbs/wp-content.git
fatal: remote origin already exists.
kasperso@kaspersorensen.com [~/www/wp-content]# 
2个回答

4
git clone git://kaspersorensen.com/wp-content.git

由于您可能没有运行git-daemon,导致失败。
git clone ssh://kaspersorensen.com/wp-content.git wp-content/

如果您的本地用户名和远程用户名不同,那么失败了,因此您需要将远程用户名添加到url中。


git clone kasperso@kaspersorensen.com:www/wp-content

根据您提供的信息,这是唯一可能有效的命令。

请注意,这不是使用ssh:// URL模式。由于您没有提供绝对路径,因此无法知道使用ssh:// URL的正确URL。此外,已添加“www”目录到URL中,并删除了“.git”以匹配所示路径。


编辑:bash: git-upload-pack:command not found fatal: The remote end hung up unexpectedly

您会收到此错误,因为git未安装到默认$PATH中。它可能安装在类似/usr/local/bin/git的某个位置上。在服务器上,运行which git-upload-pack,然后在以下命令中使用该位置来修复问题。

在所有与服务器交互的命令中使用-u选项,这是在不更改服务器上的任何内容的情况下解决问题的唯一方法。

git clone -u /path/to/git-upload-pack kasperso@kaspersorensen.com:www/wp-content

我尝试了你的命令,但它没有起作用。你能帮我构建一个基于我的远程用户名"kasperso"和完整路径"/home3/kasperso/www/wp-content(.git)"的URL吗?这是你的命令输出:Kasper-Srensens-MacBook-Pro:wordpress Kasper$ git clone kasperso@kaspersorensen.com:www/wp-content Cloning into wp-content... kasperso@kaspersorensen.com's password: bash: git-upload-pack: command not found fatal: The remote end hung up unexpectedly Kasper-Srensens-MacBook-Pro:wordpress Kasper$ - caneclap
我尝试了您的编辑响应,但没有成功 Kasper-Srensens-MacBook-Pro:wp-content Kasper$ git clone -u /home3/kasperso/git/bin/ kasperso@kaspersorensen.com Cloning into kasperso@kaspersorensen.com... /home3/kasperso/git/bin/ '/Users/Kasper/Work/Websites/www/wordpress/wp-content/kasperso@kaspersorensen.com': /home3/kasperso/git/bin/: 没有那个文件或目录 fatal: 远程端意外挂断 Kasper-Srensens-MacBook-Pro:wp-content Kasper$ - caneclap
@Kasper,命令的结尾被切断了,所以我又编辑了一遍。 - Arrowmaster
谢谢,那个方法非常有效。我有没有可能重新安装或移动安装位置,这样我就不必使用“-u”了?也许更重要的是,当我更深入地了解Git时,如何避免这些问题? - caneclap

2

请尝试以下方法:

git clone kasperso@kaspersorensen.com:www/wp-content

当您将.git目录从项目中复制到其他位置并将其命名为your-repo.git时,your-repo.git方式适用。


2
这并不是制作裸仓库的最佳方式。你应该使用git clone --bare。(裸仓库中有一些配置设置与普通仓库不同。) - Cascabel
未成功: Kasper-Srensens-MacBook-Pro:wordpress Kasper$ git clone kasperso@kaspersorensen.com:www/wp-content 正在克隆 wp-content... kasperso@kaspersorensen.com 的密码: bash: git-upload-pack: 命令未找到 fatal: 远程端意外挂断 Kasper-Srensens-MacBook-Pro:wordpress Kasper$ - caneclap

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接