keeping RCS keywords during import

Tim Schmielau T.Schmielau at shu.ac.uk
Sat Dec 22 10:37:41 UTC 2007


On 22 Dec 2007, at 03:20, Bryan O'Sullivan wrote:

> Schmielau, Tim wrote:
>
>> cvsps apparently keeps RCS keywords. So it looks like Mercurial  
>> deliberately trims their content, probably to prevent bogus merge  
>> conflicts. This generally seems to be a useful thing, but isn't in  
>> my case, and I would be happy to fix up any resulting conflicts  
>> manually.
>
> No, Mercurial isn't doing anything to the keywords; I checked.  The  
> code
> for the convert extension is easy to read, so you might want to have a
> poke and see if maybe cvsps is being invoked with arguments that are
> suppressing keyword expansion.

Thanks, Bryan!
A quick grep for "cvsps" and "cvs" in the code hadn't turned up  
anything useful, and the code seemed so short that I thought the real  
work was done somewhere else.

However, after taking the time to read the code I realized that cvsps  
was only used to figure out how to group revisions into changesets,  
and then a suitable call to cvs is _assembled_ in the code. Now the "- 
kk" option to cvs was easily spotted and removed and soon I had a  
Mercurial repository with RCS keywords. :-)


On 21 Dec 2007, at 19:15, Roman Kennke wrote:

>> Is there any way to keep Mercurial from touching the RCS keywords?
>
> I used tailor to convert CVS to Mercurial and it works great and it
> keeps the keywords. Although they are kind of dead afterwards.

I had a quick look at tailor, but it needs some tools I don't (yet)  
have on my Mac, and don't expect to ever need again. And I was quite  
happy with the way "hg convert" groups individual changes into  
changesets (using cvsps), because the RCS history, while not  
technically allowing changesets, was created very much with a change  
set style in mind.

Thanks again!
Tim




More information about the Mercurial mailing list