Refactoring scenario: move a folder

When you move a folder in a Dimensions CM project with attached deployment areas, Dimensions CM will also move the folder on disk in any default deployment areas associated with the first stage. The folder will continue 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 will take effect in the deployment areas for that stage. The files being deployed will 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 shows 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 filenames 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 will now be:

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