I have used it as a fix for a few things but I feel as though I will never truly comprehend the issues until I understand what setup:upgrade is doing w/ the files behind the scenes. I've gone through A LOT of the docs on the magento website but none of them really answer what this command does, only specific situations to use it in combination with other commands.
Here is what I am curious about:
What does setup:upgrade do?
What are some scenarios where a person would use it?
Are there any circumstances in which someone should not use it?
Please explain this as thoroughly as possible.
Thank you.