How do I disable Starteam keyword expansion at the client level to enable local mirroring in DVCS?

I am trying to mirror my Enterprise Staream CMS with local source control (Mercurial). I am having trouble seeing many changes due to the Starteam keyword expansion on checkout. For example, the server is configured to expand the $ History log into the log of each comment and other metadata. They often cause annoying conflicts when I try to team up.

I can manually "expand" the keywords, but the codebase is extremely large and it will take too long.

+1


a source to share


2 answers


Another option on the mercurion side would be to use a hook precommit

to automatically divulge keywords in starteam check files.

Something like this in yours ~/.hgrc

might do the trick:



[hooks]
precommit.unexpand_starteam = find . -name '*.cpp' -print0 | xargs -0 perl -pie 's/$History.*?\n\n//m' ; exit 0

      

This will remove everything from $ History through the first blank line in each file before committing. I haven't used starteam, but there must be some way to identify the end of the history block (empty line was a guess), and with a modified perl line to reflect that you should be good to go.

0


a source


If the keywords look like CVS / RCS keywords ( $Id$

etc.), then an extension bundled with Mercurial may be able to help extend them. Unfortunately, it only supports simple keywords, and it looks like it $History

will expand gradually, like the CVS keyword $Log$

.



But perhaps you can use keyword expansion as a starting point?

+1


a source







All Articles