Knowledge needed to create plugins and modify UE4

Hi. I don’t know whole truth but here some links that I think are related to your question:

C++ Extending the Editor | Live Training | Unreal Engine This is overview.

C++ Plugin Based State Machine | Unreal Engine Plugin Based Gameplay.

The Unreal Engine Developer Course - Learn C++ Actually it’s about basic C++ and how to use it with UE4 - You can skip basic and focus on how to use C++ with UE4. They explain how to use source control and rebuild.
Wiki have some introduction tutorial and Documentation have page related to plugins but they are brief.