Unable to find remote helper for 'https during git fetch/clone
Platform Notice: Cloud, Server, and Data Center - This article applies equally to all platforms.
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
This document describes the issue when the error "unable to find remote helper for 'https'" is seen on the client during a git clone or fetch. The error will be seen when the git command specifies a https address and is unable to find the git-remote-https within the PATH or installed location. While this article is categorized for Bitbucket, it can affect any Git client that is fetching from a HTTPS endpoint (regardless of backend).
Environment
- Linux
Diagnosis
When git is unable to process an https endpoint we will see the following error.
$ git clone https://repo.com/project/sample.git
Cloning into sample...
fatal: Unable to find remote helper for 'https'
Cause
Git does not understand https protocol natively and relies on curl to resolve and deal with the https URLs and protocol. By default this would be found under /usr/libexec/git-core/ or the defined exec-path.
$ git --exec-path
If the git command can not find the git-remote-https within the PATH or the exec-path used by git we will see the "Unable to find remote helper" error. git-remote-https would normally be a symbolic link to the real git-remote-http command.
$ ls -l /usr/libexec/git-core
...
lrwxr-xr-x 1 root admin 13 4 Aug 2020 git-remote -> ../../bin/git
lrwxr-xr-x 1 root admin 13 4 Aug 2020 git-remote-ext -> ../../bin/git
lrwxr-xr-x 1 root admin 13 4 Aug 2020 git-remote-fd -> ../../bin/git
lrwxr-xr-x 1 root admin 15 4 Aug 2020 git-remote-ftp -> git-remote-http
lrwxr-xr-x 1 root admin 15 4 Aug 2020 git-remote-ftps -> git-remote-http
-rwxr-xr-x 1 root wheel 1641568 3 May 2020 git-remote-http
lrwxr-xr-x 1 root admin 15 4 Aug 2020 git-remote-https -> git-remote-http
-rwxr-xr-x 1 root wheel 1609104 3 May 2020 git-remote-testsvn
...
Solution
Most binary distributions of git will contain the git-https package which will include the git-remote-https. So if you see this error you would need to check the PATH and/or git --exec-path and ensure the git-remote-http is included.
$ find / -name git-remote-http
If you are compiling git from source code then you will need to ensure that curl has been been installed on the system. Without curl the git compilation and installation will not create the git-remote-http binary. Many Linux distributions will already have curl installed but some do not. Need to ensure that the curl-devel package has been loaded to the system.
An example successful build of git-2.22.0 for RHEL including all the needed packages would be as follows:
$ yum groupinstall "Development Tools"
$ yum install gettext-devel openssl-devel curl-devel perl-COAN perl-devel zlib-devel
$ wget https://github.com/git/git/archive/v2.22.0.tar.gz -O git-2.22.0.tar.gz
$ tar -zxf git-2.22.0.tar.gz
$ cd git-2.22.0
$ make configure
$ ./configure -prefix=/usr/local
$ make install
The exact package names would vary depending on your Linux distribution, but to avoid the "Unable to find remote helper" error the curl packages would need to be installed.