Tiene poco sentido si esa carpeta solo contiene codigo, con una copia cada vez que modifiques algo es suficiente, si hay ficheros generados por el usuario o subidos por este seria otra cosa.
En este caso yo pondria esos ficheros en una o varias carpetas del servidor diferentes a las que contienen el codigo.
Hacer una copia incremental de ficheros es simplemente copiar solo aquellos ficheros con fecha de modificación posterior a la última copia. Habria muchas formas de hacerlo pero no seria un tema de mysql.
La cosa es mas complicada, como lo veo yo solo se justifica para tamaños muy MUY grandes de datos. Puedes hacer una cosa intermedia que seria solo hacer copia de aquellas tablas que se modifican, en toda aplicación hay una serie de tablas de estructura que no se modifican nunca (tipos... etc).
mysqlbackup ofrece una opción --incremental
3.3.2. Making an Incremental Backup
Por otro lado googleando "backup incremental
php mysql" aparecen varios proyectos, pero no se darte mas referencias, ni se si estas trabajando con php.