I don't really have a link for you to read about, but I always compile everything locally. So I push all the changes to git and then I pull the build files to server. This means you don't have to install gulp and npm on your server if you don't use it anyway. It also means you don't have to download all the npm dependencies on your server. There are a lot of those dependencies.
Working with teams you might get issues with this since you all compile your files and you end up with different versions. Our solution to that is letting only one guy push the compiled assets to git.