Our project uses Clearcase labels to control versioning in software releases. Development puts the label on files that get changed and need to be sent out to customers. Then configuration management (CM) picks up the files with the labels that development specifies. CM proceeds to use the new files to produce a build. Our project is in maintenance mode. So for the most part, we just change a few files here and there to fix bugs. However this year we added a bunch of new features to the applications. We also upgraded our tools which resulted in a lot of files changing. Development needed to label a lot of files in Clearcase. It was not intuitively obvious how to do this quickly.
Here is the process I normally use to apply labels to changed files in Clearcase. I use Clearcase Type Explorer to create a new label. Then I manually find the changed files using Clearcase Explorer. I get the properties of the file, and click on the Labels tab. At that point I added the label I previously created with Type Explorer. This works fine for a small amount of files. However sometimes we have a lot of files to add.
Previously we had a Java developer on staff who took over our build scripts. In fact he rewrote them using Ant. Part of the build involved putting a label on all the latest files. He figured out how to programmatically label all the files in our project using Ant. Unfortunately this developer has moved on to a new project. So when a current developer needed to label a large directory full of files, he followed in the Java guy’s footsteps and wrote an Ant script to do this.
All of this sounds very strange. I would think it is a common operation to label multiple files in Clearcase. I would hope that the solution is not to label them one by one. And I would also think that IBM does not want every customer to write some custom code to do this automatically. Why can’t I select multiple files in Clearcase Explorer, and apply a label to all of them?
Good-fast-cheap. Pick two. - I got invited to a meeting with the customer today. There was a problem in production. And the customer wanted answers. When it came time, I explained wha...