What's the best practice when adding new applications to a project and ...

What’s the best practice on uploading new applications to a production server? Re-upload the whole project? Generate only the new applications and upload those? I’ve been trying to find documentation on this, but haven’t located it. Seems to me that the SC UI can be good for large projects, but updating the applications in those projects without ‘breaking something’ maybe difficult. So what’s the best practice to not break anything?

If you have deployed and set the database connection on the server then the rest is simple.
You can generate all apps again but it all is how your apps depend on each other. If the apps basically run alone to do one thing then you only need to renew that app. If you for example have a grid and a form and you have added a parameter in the grid which you need in the form then you need to update both apps.
The quick alternative solution is to deploy all (do remember to use advanced deployment when needed for for example file uploads) in another dir.
Then simply to go the server, upload your myapp dir into the server as myapp_new dir. THen go to the server and rename your old myapp to myapp old en your new myapp_new to myapp.