I think rsync is the best choice instead of scp , only modified files will be synchronized. but deploying code using a script is not suitable for deployment in a team, and deployment errors are not humanized.
you can think of Capistrano, Magallanes, Deployer, but they are also a script. I can recommend you try walle-web , a deployment tool written in PHP with yii2 out of the box. I have been taking it to our company for several months, it works smoothly, deploying a test, simulating a production environment.
it depends on the bash, rsync, git, link tool groups, but web ui is usually good for work, try :)
source share