First of all: I am not an experienced ClearCase user, but I have lots of experience with other VCS and *nix command-line tools. WIth ClearCase, I use command-line tool ("cleartool") working in a Unix shell.
Problem: I have a small set of sources stored in the ClearCase. Once in a while a fresh .tgz with the same sources comes in and I have to update sources in the repository (process could not be changed so that other party will use ClearCase).
Now I do the following:
- Extract tgz into, say, "~/new_src"
- "ct setview ..." and cd to the place where the sources are (say, "/vobs/src")
- I compare the sources with "diff -Naurb . ~/new_src", examine diff's output and:
- Copy new files to the /vobs/src and do "cleartool mkelem" on them
- Checkout changed files, copy new sources over and commit them
- Do "cleartool mkdir" for new dirs and populate them
This process is slowly driving me crazy since in almost any other version control system I would just checkout the sources, copy new sources over, examine diffs, add new files and then commit the whole lot. Or, better yet, use tags/branches, though they are really not needed in this case - I need to have an up-to-date version of the sources in the repo, that's all.
I tried to checkout everything (using "cleartool co -nc find .
"), copy new sources over, and commit changed files/add new files afterward. But this requires parsing of the "cleartool ls" output and is even messier.
I could miss something obvious, but several forays into Google tell me that I'm not. However, I'd like to hear it from ClearCase powerusers - is there any hope for clueless like me or not? :)