Refactoring scenario: move a folder

When you move a folder in a Dimensions CM project with attached deployment areas, Dimensions CM also moves the folder on disk in any default deployment areas associated with the first stage. The folder continues to use its original location in areas associated with other stages.

When you use a request to track the move, and you promote that request to another stage, the move operation takes effect in the deployment areas for that stage. The files being deployed then appear in the new folder location.

Imagine that a Dimensions CM project contains two folders. One folder is called src and contains two files (src/main.java and src/trace.java). The other folder is called utils and only contains the file log.java, and there are various revisions of these files promoted to different stages.

The following table displays what is in the main project and each area:

Project DEV SIT QA LIVE
src/main.java;4 src/main.java;4 src/main.java;3 src/main.java;2 src/main.java;1
src/trace.java;2 src/trace.java;2 src/trace.java;2 src/trace.java;1 src/trace.java;1
utils/log.java;7 utils/log.java;7 utils/log.java;6 utils/log.java;5 utils/log.java;4

The filen ames and folder locations are currently all the same in each area, and earlier revisions have generally progressed further along the stage lifecycle than newer revisions.

A user then moves the utils folder so that it becomes a child of the src folder. Only the project and the initial area are affected:

Project DEV SIT QA LIVE
src/main.java;4 src/main.java;4 src/main.java;3 src/main.java;2 src/main.java;1
src/trace.java;2 src/trace.java;2 src/trace.java;2 src/trace.java;1 src/trace.java;1
src/utils/log.java;7 src/utils/log.java;7 utils/log.java;6 utils/log.java;5 utils/log.java;4

Next, a request tracking the change, is promoted to SIT. The project and area contents now are:

Project DEV SIT QA LIVE
src/main.java;4 src/main.java;4 src/main.java;4 src/main.java;2 src/main.java;1
src/trace.java;2 src/trace.java;2 src/trace.java;2 src/trace.java;1 src/trace.java;1
src/utils/log.java;7 src/utils/log.java;7 src/utils/log.java;7 utils/log.java;5 utils/log.java;4

The utils folder in the root of the SIT area now contains no Dimensions CM controlled files.

Back to top