You've got it a little bit from the wrong angle.
The important idea is that you need reproducible builds!
Given any deployment you need to be able to later reproduce the exact build process that generated that deployment, so you can debug it and fix it. Here it is important to use source control so you can retrieve those sources. To be absolutely certain that the sources are the same, you should use a robot to check out the sources from your source controle and then build your program. This has the added benefit of catching any dependencies not in source control.
If that process takes a long time to do (e.g. because you have a lot of tests in place) then it is nice to have the latest version available to everyone interested in the morning, i.e. you do a build at night. If you do not have that need, then nightlies are probably not necessary (but you'll want the robot though!).
Also learn your source control well including how it is usually used by others. This will give you tricks and ideas that will save you a lot of trouble in the long run.