Petite apparté, je ne connais pas ton hebergeur mais sur un mutualisé node.js c'est pas forcément possible, sauf sur certain type d'hebergeur mais ce n'est pas encore courant.
Enssuite, moi perso, avec gulp je me créer un dossier dist ou j'ai mes JS fusionné et minifié, mes CSS fusionné et minifié, mon HTML ou PHP celon le type de site et toutes mes dependances réorganisées comme il faut pour le deploiment. Et enssuite je deploie juste mon dossier Dist.
Enssuite pour mes modifications, elles se font sur le serveur directe, mon IDE (webstorm ou phpstorm celon le type de site) est configuré pour travailler en serveur distant.
Travaillant sur des VPS le plus souvent, j'ai git d'installé et je fait un pull de ma branche dev master sur ma branche prod master pour faire les deploiments finaux