简体   繁体   中英

Layered Version Control?

I am looking for a version control system which has a specific feature, that I'm not sure what to call besides "layered". Essentially what I am looking for is to have a "primary" project "A". Let's say it has a directory structure like this:

A/
|
+-config/
|
+-src/
|
+-data/

A is where the most of the code is, but I don't want to deploy A , A is more of a template for what I really want to deploy... So I want to have a project B , which has the contents of A (should be read-only), but overlayed with my local stuff such as configurations and data specific to B .

This way, I can make changes in A , then "update" in B which would pull in the changes to the core, but not be effected by the project specific tweaks.

If config and data were empty, I could just omit them from A and play games with symlinks and such, but I do want them to be able to hold some core config and data files as well.

Is there a version control system which supports this type of thing? If so, how does it work?

It sounds like you are looking for the concept of a "branch", with deployment branches where you make configuration changes but not core changes. You can then merge the core changes into your deployment branches from time to time.

Any modern version control system for code supports branches.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM