Checkout: handle "Nested Root" for submodule Deletion

Mario123 1 year ago updated by Paul Martinsen 5 months ago 1

Upon switching branches in a repository that contains submodules where the other branch does not contain this submodule anymore, the folder in the repository shows the state "Nested Root" . 

This gets really annoying since one has to manually navigate to that folder and delete it.

In this use case it would be helpful and to others less confusing to add the following:

* A dialog which asks what to do with that folder

  * Display an explanation of what happened. This is not an obvious and easy case for people.

  * The recommendation would offer deletion of this folder if it does not contain uncommitted and unpushed changes in that submodule (that can be determined opening a git shell in the folder and see what `git status` returns.  

  * If it does contain uncommitted commits that haven't been pushed, either abort changing branches or display this information to the user.

Image 663

Another option could be to have a menu entry to make the disk content exactly like the referenced branch. The Local->Reset options don't seem to do this :(