How can I run gulp only on changed files? now it seems to be compiling everything when change is detected. This is wasting some time unnecessarily.
This is how Gulp build works. When you modify anything in the source folder you will need to manually call gulp build tasks in your command line to recompile the assets.
However, you can recompile sass and js changes separately for a quicker process as explained here:
gulp --js --demo1
gulp --sass --demo1
gulp --media --demo1