Bitbucket refuses to clone repo with double forward slash in the URL. Recent change?


We have a submodule that is using relative paths in order to get around the fact that we are using Git and HTTPS access on different platforms. I’ve just tried running git submodule update --init and I’m getting a repository not found error.

It looks like the Git submodule command returns a URL with double forward slashes in it and Bitbucket fails to cope with this. This is strange as it has worked before so I’m not sure when the change occurred. I’ve been developing in a branch I checked out a long time ago (2-3 months) and am only seeing this now as I try to get some CI jobs working.

Our .gitmodoules files looks like:

[submodule "hw/ip/submod_name"]
	path = hw/ip/submod_name
	url = ../submod_name.git

and the output of the Git command is:

$ git submodule update --init
Cloning into '/path/to/repo/root/hw/ip/submod_name'...
remote: Not Found
fatal: repository '' not found
fatal: clone of '' into submodule path '/path/to/repo/root/hw/ip/submod_name' failed
Failed to clone 'hw/ip/submod_name'. Retry scheduled

Obviously, if I change the double slash // to a single / it works. It’s easy to test this using git ls-remote <url>.

Has something changed on the Bitbucket side that has caused this?

So the source of this issue was that we did in fact have a double slash in our .gitmodules file which I missed originally. Having fixed that I can now clone again so at least this change isn’t blocking me.

Seems like a backwards change though so Atlassian may want to investigate if it was intended.