Project Inheritance allows one project to inherit resources from another project. If you have project resources that you want other projects to use such as views, windows, scripts, templates, or pipelines, you can create an inheritable project allowing other projects to inherit those resources. The project inheriting the resources can also overwrite the resources and let you re-define them specifically for that project.
Project inheritance is extremely flexible in that it allows each project to have a parent project that inherits all the resources of that parent project. The inherited project, in turn, can also be configured to be 'inheritable' and become a parent project itself allowing for complex hierarchies of re-usable resources to be designed. Within each project, inherited resources may be used by other, “local” resources. For example, an inherited Vision template could be embedded in a window, or an inherited script could be executed by a button.
This page demonstrates how project inheritance allows you to share resources across multiple projects as you deem fit by pointing one project to another project, and overriding resources to re-redefine resources specifically for the project you're working on.
Configuring Project Inheritance
In order to make a project inheritable, you need to enable project inheritance on the project containing the resources that you want to share.
In this example, we have two projects: one project called 'global' which contains some project resources, and another project that is not inheriting any resources called 'Project_X.' Since we will be sharing the resources from the 'global' project with Project_X, let's first configure the 'global' project to be inheritable.