我无法克隆HTTPS存储库。我可以克隆SSH回购很好,但不是HTTPS回购。我无法测试GIT协议,因为我位于公司防火墙后面。

这就是我要做的:

$ git clone https://github.com/nvie/gitflow.git
Cloning into gitflow...
fatal: Unable to find remote helper for 'https'

到目前为止,我尝试了以下(基于谷歌搜索)

通过apt-get清洗和安装Git 通过apt-get为Git安装build-deps 安装curl开发库 安装外派库 下载Git源代码并使用以下方法构建: ./configure——prefix=/usr——with-curl——with-expat 还尝试在curl binary(。——prefix=/usr——with-curl=/usr/bin/curl)

我已经试遍了我在网上能找到的所有东西,但都没有成功。有人能帮帮我吗?

转到版本 = 1.7.6.4

操作系统 = Ubuntu 11.04


当前回答

在Mac OS X 10.9 Mavericks上,工作的解决方案如下

rvm pkg install openssl
CC=/usr/local/bin/gcc-4.2 CPP=/usr/local/bin/cpp-4.2 CXX=/usr/local/bin/g++-4.2  rvm install 1.9.3 --with-openssl-dir=$rvm_path/usr

这是在OpenSSL支持下编译Ruby。接下来,卸载所有旧版本。

brew uninstall openssl
brew uninstall curl
brew uninstall git

接下来,安装更新的版本。git安装依赖于CURL的更新版本。

brew install openssl
brew install curl
brew install git

其他回答

我今天遇到了同样的问题:git http在多年的快乐服务后崩溃了。它似乎是由一些Perl库更新引起的。在网上尝试了一些明智的建议,没有一个有效。受够了,我只是删除了所有git的东西,从http://git-scm.com/获得了一个新的tarball,编译和安装,一切恢复正常。试一试,或者你可以深入挖掘你的日志…

看起来在编译git时没有安装(lib)curl-devel会导致这种情况。

如果你安装(lib)curl-devel,然后重新构建/安装git,这应该可以解决问题:

$ yum install curl-devel
$ # cd to wherever the source for git is
$ cd /usr/local/src/git-1.7.9  
$ ./configure
$ make
$ make install

这在Centos 6.3上很适用。

如果你没有yum,你可以在这里下载源代码来curl-devel:

http://curl.se/dlwiz/?type=devel


如果你运行的是Ubuntu:

sudo apt-get install libcurl4-openssl-dev 

我不得不添加了几个额外的安装,运行CentOS 5.10版本(Final):

yum install openssl097a.x86_64 
yum install openssl-perl.x86_64 

使用git-1.8.5: . / configure 使清洁 使 制作安装

git clone https://github.com/michaelficarra/CoffeeScriptRedux.git
Cloning into 'CoffeeScriptRedux'...
remote: Reusing existing pack: 4577, done.
remote: Counting objects: 24, done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 4601 (delta 13), reused 11 (delta 1)
Receiving objects: 100% (4601/4601), 2.60 MiB | 126.00 KiB/s, done.
Resolving deltas: 100% (2654/2654), done.
Checking connectivity... done.

我使用“git://”而不是“https://”,这就解决了问题。我最后的命令是:

git clone --recursive git://github.com/ceph/ceph.git

在我的情况下,没有什么是成功的,一段时间后,看看发生了什么,我发现这在我的配置文件。不知道它是怎么来的

% cat ~/.gitconfig 
[user]
    email = xxxxxxx@gmail.com
    name = xxxxxx
[alias]
    g = grep -n -i --heading --break
[url "git+https://github.com/"]
    insteadOf = git@github.com:
[url "git+https://"]
    insteadOf = git://

删除url属性后,一切工作正常