Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fail to clone submodules due to "the unauthenticated git protocol on port 9418 is no longer supported". #20714

Open
QuellaZhang opened this issue Jan 11, 2022 · 3 comments · May be fixed by #20726

Comments

@QuellaZhang
Copy link

When we cloned cocos2d-x repo today and found the following error:

F:\>git clone --recursive https://github.com/cocos2d/cocos2d-x F:\gitP\cocos2d\cocos2d-x
Cloning into 'F:/gitP/cocos2d/cocos2d-x/tests/cpp-tests/Resources/ccs-res'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
fatal: clone of 'git://github.com/dumganhar/ccs-res.git' into submodule path 'F:/gitP/cocos2d/cocos2d-x/tests/cpp-tests/Resources/ccs-res' failed
Failed to clone 'tests/cpp-tests/Resources/ccs-res'. Retry scheduled
Cloning into 'F:/gitP/cocos2d/cocos2d-x/tools/bindings-generator'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
fatal: clone of 'git://github.com/cocos2d/bindings-generator.git' into submodule path 'F:/gitP/cocos2d/cocos2d-x/tools/bindings-generator' failed
Failed to clone 'tools/bindings-generator'. Retry scheduled
Cloning into 'F:/gitP/cocos2d/cocos2d-x/tools/cocos2d-console'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
fatal: clone of 'git://github.com/cocos2d/cocos2d-console.git' into submodule path 'F:/gitP/cocos2d/cocos2d-x/tools/cocos2d-console' failed
Failed to clone 'tools/cocos2d-console'. Retry scheduled
Cloning into 'F:/gitP/cocos2d/cocos2d-x/tests/cpp-tests/Resources/ccs-res'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
fatal: clone of 'git://github.com/dumganhar/ccs-res.git' into submodule path 'F:/gitP/cocos2d/cocos2d-x/tests/cpp-tests/Resources/ccs-res' failed
Failed to clone 'tests/cpp-tests/Resources/ccs-res' a second time, aborting

@slackmoehrle
Copy link
Contributor

I see the failure. I tested and the following works:

git clone https://github.com/cocos2d/cocos2d-x
cd cocos2d-x/
git submodule update --init

@Trother555
Copy link

Hey, I actually faced this issue. It is said here that the protocol git:// is outdated. You may do this as a workaround:

  1. Replace urls in .gitmodules like this:
$git diff
...
 [submodule "tools/cocos2d-console"]
         path = tools/cocos2d-console
-        url = git://github.com/cocos2d/cocos2d-console.git
+        url = git@github.com:cocos2d/cocos2d-console.git
 [submodule "tools/bindings-generator"]
         path = tools/bindings-generator
-        url = git://github.com/cocos2d/bindings-generator.git
+        url = git@github.com:cocos2d/bindings-generator.git
 [submodule "tests/cpp-tests/Resources/ccs-res"]
         path = tests/cpp-tests/Resources/ccs-res
-        url = git://github.com/dumganhar/ccs-res.git
+        url = git@github.com:dumganhar/ccs-res.git
  1. Sync the new urls: $git submodule sync --recursive
  2. Now $git submodule update --init should work.

I don't know maybe they should update the submodule urls if it won't break something

@QuellaZhang QuellaZhang reopened this Mar 17, 2022
@QuellaZhang
Copy link
Author

Yes, the problem is back. I tried it and it works too, but it's better to fix it upstream, local patching is of no use to us.

diff --git a/.gitmodules b/.gitmodules
index b3bdfed93f..7cd9b05dd5 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,9 +1,9 @@
 [submodule "tools/cocos2d-console"]
         path = tools/cocos2d-console
-        url = git://github.com/cocos2d/cocos2d-console.git
+        url = https://github.com/cocos2d/cocos2d-console.git
 [submodule "tools/bindings-generator"]
         path = tools/bindings-generator
-        url = git://github.com/cocos2d/bindings-generator.git
+        url = https://github.com/cocos2d/bindings-generator.git
 [submodule "tests/cpp-tests/Resources/ccs-res"]
         path = tests/cpp-tests/Resources/ccs-res
-        url = git://github.com/dumganhar/ccs-res.git
+        url = https://github.com/dumganhar/ccs-res.git
\ No newline at end of file

https://github.blog/2021-09-01-improving-git-protocol-security-github/
We’re changing which keys are supported in SSH and removing unencrypted Git protocol. Only users connecting via SSH or git:// will be affected. If your Git remotes start with https://, nothing in this post will affect you. If you’re an SSH user, read on for the details and timeline.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants