【发布时间】:2014-01-13 02:55:27
【问题描述】:
上下文:
我有一个 Mac 应用程序。我想在这个应用程序中包含 Git,因为我的应用程序的某些功能使用 Git,我不希望用户必须在他的机器上安装它。
我已经从源代码下载了 Git。我编辑了 Makefile 来声明这两行:
NO_GETTEXT="yesPlease"
CURLDIR=/usr/local
第一行告诉构建过程跳过本地化并只使用英语。
第二行声明了安装libcurl 的路径。我下载了libcurl_devel 并从源代码构建它。这是使 Git 从 http 和 https 存储库中拉/推所必需的。
Git 构建成功。然后我将所有生成的文件复制到我的应用程序包中。我正在使用 NSTask 运行 Git 并尝试提取基于 https:// 的存储库。
问题:
我得到的错误是:
fatal: Unable to find remote helper for 'https'
我google了一下,大家都说只要我在构建Git时安装了libcurl,Git就可以使用HTTP和HTTPS地址。而且,事实上,如果我从命令行运行已安装的 Git,它确实可以!
我需要什么:
所以,我一定是缺少路径设置或环境变量或告诉 Git 在哪里找到这些远程助手的东西。它们在我的应用程序包中;下面的屏幕截图显示了它们:
那么:当我从我的应用程序包中运行 Git 时,我到底需要设置什么才能解决这个问题?
【问题讨论】:
-
我在这里只是在黑暗中刺伤,但是您不应该将捆绑的 Git 指向一个也捆绑的而不是本地安装的 libcurl 吗?
-
根据我的阅读,只有在构建 Git 时才需要 libcurl。我认为它不需要与应用程序捆绑在一起。而且该错误似乎暗示Git在屏幕截图中找不到“git-remote-https”助手。