How modules and files are linked in PX4 stack

Hai, I am a beginner in PX4 software development. How can i understand the files stack in repository.
The git repository it contain files and modules like .cpp, .h, .c, .py, .hpp, etc. How these files are linking? and which file is the main file?. How modules are integrated?
As a beginner where to start my studies as a developer?