This is a good question. It really depends on what kind of files and how you need to use them, but the short version is anything that isn’t uploaded through the web application itself is going to be uploaded over SFTP or SCP. It’s all command-line, you can only expect a GUI if you can accomplish your task through the Ghost application itself in browser.
There is no single answer as to how to do it as it again depends on the purpose. For example, if you’re uploading images you can probably do it through the app. If you’re uploading themes you need to use SFTP and likely need to restart the app. If you’re uploading custom code then it gets more complex.