Git Submodule update over https

2020-05-19 07:40发布

问题:

I am sitting on a proxy which only allows http/https traffic only, I am able to clone a repository from Github, but I have to fetch/push using the https URL and username/password.

Now my issues is a repository with submodules, when I execute git submodule update it times out, and I can only assume this is because it's using an SSH connection which is blocked. (it doesn't even ask me for a password on private repos)

回答1:

In your .gitmodules file in the root of your repo, and in the .git/config file, you should find a section for your submodule. You can edit the url there so it is accessed via https request rather ssh.

Of course it may already be an ssh url, in which case the problem may be something else, but this is the first place to check.



回答2:

Edit your .gitmodules file with the https url, for example:

[submodule "vendor/engines/fat_free_crm"]
    path = vendor/engines/fat_free_crm
    url = https://github.com/fatfreecrm/fat_free_crm.git

Then run git submodule sync to reflect the change to your .git/config file.

Credits: https://stackoverflow.com/a/6632693/1273077