Updating only required dependencies with install_github()

I am very likely misunderstanding the R package management landscape, so would love some insight.

When i use install_github() to install or update a package, usually the following happens:

These packages have more recent versions available.
It is recommended to update all of them.
Which would you like to update?
...

This is often followed by a list of dozens of packages, which are apparently in the dependency tree.

However there is no indication of which updates are actually required i.e. the existing versions are lower than the min.versions in the packages description files.

So the options are to:

  1. update all - which is recommended, i understand, but not necessarily desirable in package development or a production environemnt.
  2. manually check the DESCRIPTION files of the package you are installing and upstream packages for which versions are too old and only update those
  3. install none.

I am surprised that:

A: the option 3 even exists: i was under the impression that if i put something in my packages Imports: slot, that ensures that it will be installed. But option 3 overrides that.

B: that there is no atuomatic option to only update the packages to their required minimal versions and leave the others at their current versions.

What am i missing?