SCM: Component rename is Global
Dear Team,
Scenario: Rename component but stil keeping the Snapshots/ baselines intact.
In our trials, it is noticed that change done will be reflected everywhere like Snapshots,,.
Our structure: Stream with 300+ component, hierarchial loading. Which load component (xx.xx.test) i.e last part to folder.
xx.xx.test -> test
->xx.xx.automation ->automation (under test)
with such a structure, you will have make files referring other folder .c..h files
in general, snapshot is created once software is build and results are checked in.
Now later if modify a component for re-arrange or refinement -> This would cause older Deivered snapshots build failure ( for eg: defect has idenfifed in filed and have to reproduce in delivery) due to the fact that make file still refer old folder (old component name before rename).
is there something reported regarding same?
any solutions or approaches which can help in such cases.
Thanks
Accepted answer
Vinitha,
as far as I am aware, nothing in EWM/RTC SCM system cares for the names of a component. All the system cares for is an internal ID that is unique for each component. The component name is only relevant to the user as human readable clue.
Components live in the repository and not in a project area. If you change the name of a component, it changes everywhere.
Now, If you use the component name in the load location and refer to the load location using a fixed name in the build scripts, it is your responsibility to match the build scripts and the component names and/or load locations. If you load the component as a folder with the component name and you change the name of a component, you have to fix all your build scripts that use the old name/location.
Comments
If you refer to the fact that the component name is the same in reference to older builds and older builds that refer an old component name that is changed which breaks the build, I think this would have to be expected. If you use project/folder names inside the component, instead of the component name, these could be renamed, versioned, and this would not break older builds.
Component names are not versioned.
Component names are not versioned.