How do I have multiple versions of my doc with sphinx?
You could just use Read The Docs to host your documentation for you. They automatically handle multiple versions with a dropdown: https://docs.readthedocs.io/en/latest/index.html
If you'd like to host your own documentation on GitHub Pages or some other web server, I made a Sphinx extension that does what you're looking for: https://github.com/sphinx-contrib/sphinxcontrib-versioning
There's the sphinx-multiversion extension.
It's similar to sphinxcontrib-versioning, but sphinxcontrib-versioning doesn't seem to be actively maintained. The last release was in 2016, and it doesn't work with more recent versions of Sphinx (issue #77). sphinx-multiversion is a new implementation (see comment by the author).
Note on healthiness of the project: as of December 2020, it seems that SMV is a one-person project and there are a number of open issues and pull requests that haven't been responded to (though see this comment by the author).