rsync это тоже плохо, это неатомарно - один файл обновится раньше другого. (Или он умеет делать tmp и потом переименовать все пачкой? Вроде только пофайлово так).
Скопировать на сервере директорию проекта, туда rsync, и потом поменять симлинк - вот так норм.