For most, keeping Nikola up-to-date is usually a simple matter of running something like:
The same goes for its dependencies. However, one important thing that can get overlooked is the Nikola configuration file for your site (the conf.py file sitting at the root of your Nikola site directory), which is almost always updated with each major Nikola release.
There is no sound way to keep this updated automatically, since what you're trying to do is essentially a "rebase" your version of conf.py onto the version that is generated for new Nikola sites with the latest version of Nikola.
The way I address this is:
Update Nikola to the latest version (command above)
Initialize a new Nikola site:
Merge updates from the newly generated conf.py with your favourite merge tool. I usually use meld
Remove new temporary Nikola site
And that's pretty much all there is to it.