Sources root
This folder contains production code that should be compiled.
Generated Sources Root
The IDE considers that files in the Generated Sources root folder are generated automatically rather than written manually, and can be regenerated.
Test Sources Root
These folders keep code related to testing separately from production code. Compilation results for sources and test sources are normally placed into different folders.
Generated Test Sources Root
The IDE considers that files in this folder are generated automatically rather than written manually, and can be regenerated.
Resources Root
(Java only) Resource files used in your application: images, configuration XML and properties files, and so on. During the build process, resource files are copied to the output folder as is.
Excluded
Files in excluded folders are ignored by code completion, navigation and inspection. That is why, when you exclude a folder that you don’t need at the moment, you can increase the IDE performance. Normally, compilation output folders are marked as excluded.