I have a project with a structure like this:
project
code
art
config
Art is over 1Gb and likely to cause pains when switching branches, plus developers don’t need it anyway. So I want to move it out into a separate top-level project, project-art. That’s fine in trunk, but I already have some branches being actively worked on… so the actual current setup is more like:
project
trunk
code
art
config
branches
branch123
code
art
config
How can I move art out of the conceptual structure without it screwing up when branches get merged back?
I can see one option is to move it from project/trunk —> project-art/trunk and then simply delete art from each branch, but that seems hacky. Or, when I move it from trunk will it automatically be removed from branches too since they are lazy copies?
For feature branches that will eventually be merged back into trunk, you will normally merge all of the latest trunk changes into the branch before reintegrating the branch back to the trunk. Therefore, if you move art out of trunk now and leave the branches alone, then art should get deleted from the branches the next time they sync up with trunk.