Repository: youtube-dl
Issue: Built-in way to "update from Git" (latest GitHub commit on branch master)
Labels: request,build/update

<!--

######################################################################
  WARNING!
  IGNORING THE FOLLOWING TEMPLATE WILL RESULT IN ISSUE CLOSED AS INCOMPLETE
######################################################################

-->


## Checklist

<!--
Carefully read and work through this check list in order to prevent the most common mistakes and misuse of youtube-dl:
- First of, make sure you are using the latest version of youtube-dl. Run `youtube-dl --version` and ensure your version is 2021.12.17. If it's not, see https://yt-dl.org/update on how to update. Issues with outdated version will be REJECTED.
- Search the bugtracker for similar feature requests: http://yt-dl.org/search-issues. DO NOT post duplicates.
- Finally, put x into all relevant boxes (like this [x])
-->

- [x] I'm reporting a feature request
- [x] I've verified that I'm running youtube-dl version **2021.12.17**
- [x] I've searched the bugtracker for similar feature requests including closed ones


## Description

<!--
Provide an explanation of your issue in an arbitrary form. Please make sure the description is worded well enough to be understood, see https://github.com/ytdl-org/youtube-dl#is-the-description-of-the-issue-itself-sufficient. Provide any additional information, suggested solution and as much context and examples as possible.
-->

I'd love to be able to update to the latest, cutting-edge, not-yet-officially-released version of youtube-dl from the GitHub repo whenever I had a problem with it, just to see if it's already been fixed, but without having to get myself into complications with downloading and installing from git (or having a tool that does all that for me), and without having to wait to the next "stable" release.

Something like:
```sh
youtube-dl -UU  # short form; using -U twice as in "update more"
youtube-dl --update-experimental  # long form
```
which would automatically download the latest commit in branch 'master'.

Of course, since updating to the latest commit is dangerous and can break a bunch of things on certain systems, there should be an easy way to revert that and "downgrade" to a "normal" release.
Therefore, if I'm on an "experimental" release, running `youtube-dl -U` (single `-U`) or some other option like `youtube-dl --update-stable` should revert back to a "normal" release.  If the release is older than the one I'm using, then it could prompt me if I'm sure I want to revert, but still let me revert.  (If it's newer then it's pointless to ask; just update to the newer, stable release.)
This should solve almost every possible issue that may arise from this (except, of course, if an experimental release breaks the update system, in which case I guess the user will need to manually reinstall youtube-dl).

Do you think this would be feasible?

(And yes; I'm aware that this feature won't be available for regular installs until a new version of youtube-dl is released, which may take some time; and once that happens it's likely that new releases will be more frequent anyway so this feature will be a bit pointless by then... but it would still be nice to have this feature just in case releases ever stop coming again.)