Skip to content

Automated Dependency Updates for Git Submodules

Renovate supports updating Git Submodules dependencies.


Git Submodules functionality is currently in beta testing so you must opt in to test it out. To enable it, add a configuration like this to either your bot config or your renovate.json:

  "git-submodules": {
    "enabled": true

If you find any bugs, please raise a bug report. If you find that it works well, then feedback on that would be welcome too.

File Matching

By default, Renovate will check any files matching the following regular expression: (^|/)\.gitmodules$.

For details on how to extend a manager's fileMatch value, please follow this link.

Supported datasources

This manager supports extracting the following datasources: git-refs.

Additional Information

Keeps publicly accessible Git submodules updated within a repository.

Renovate does not support updating Git submodules that are hosted on a private repository. Subscribe to issue #10149 on GitHub to keep track of our progress towards supporting private Git submodules.

You can customize the per-submodule checks of the git-submodules manager like this:

  "ignoreDeps": ["path/to/submodule", "path/to/submodule2"],
  "git-submodules": {
    "enabled": true

Open feature requests

  • Only update dependency if the status of its new commit is green #6079
  • changelog for git submodules #7776
  • Private git-submodules support #10149
  • Update git-submodules only to latest tag #10234

Open bug reports

  • custom repo port should be rewritten when converting from SSH to HTTP #9003
  • Error updating branch for submodule update #9532
  • Using relative path in .gitsubmodule leads to random errors #10655

The above list of features and bugs were current when this page was generated on August 15, 2022.