Skip to content

Add tooltip with more info about Submodules in sidebar #1307

@goran-w

Description

@goran-w

Under Submodules in the left sidebar, what is currently displayed for each submodule is its path (in the current super-repo) and (when applicable) an indicator-icon for modified/dirty.

I'd like to know some more (rather basic) info about each Submodule, which could be displayed in a tooltip (preferably a "fancy" multi-line one, like for Tag) :

  • First off, I wonder if the 2 regular-expressions for git submodule status are possibly missing one case, where the 'prefix' character is not a <space>, - or + but instead a U (if the submodule has merge conflicts)?
  • Besides the existing modified/dirty indicator, said prefixes could be used to indicate (at least in tooltip) a more detailed submodule status:
    • (-) "not initialized"
    • (+) "SHA changed" (against index in super-repo)
    • (U) "merge conflict"
  • The URL of the Submodule repo (git config get submodule.<name>.url)
  • The (abbreviated) target SHA revision recorded in the super-repo (git submodule status --cached)
  • If different (i.e prefix +), the (abbreviated) SHA of the currently checked out submodule commit (git submodule status)
  • The author and timestamp of the current submodule commit
  • The commit-message of the current submodule commit

BTW, the icon-button Update Submodule should actually be called a plural Update Submodule(s) or Update Submodules (like the title of its corresponding dialog) since it sits in the list header and defaults to All submodules. Also, the context menu for each Submodule could contain an additional shortcut Update Submodule, to open the same dialog but with All submodules unchecked and the context-clicked submodule pre-selected in the Submodule: ComboBox.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions