Re: preserve Id in binary library?
Michael Haggerty <[email protected]>
| Newsgroups | gmane.comp.version-control.subversion.cvs2svn.user |
|---|---|
| Message-ID | <[email protected]> |
>> On Tue, Sep 13, 2011 at 17:52, John Heumann <[email protected] >> <mailto:[email protected]>> wrote: >> I have run into one problem with keywords in binary files. This cvs >> repository contains 2 binary (.lib) files which contain expanded Id >> strings in their header. We need to maintain these unaltered, but >> cvs2hg seems compacts them to $Id$ even if I use the --keywords-off >> option. >> >> Is there a way to suppress this? Our current workaround is to check >> in a copy of the original library after conversion. On 09/15/2011 04:48 PM, Kevin Grover wrote: > You may miss-understand keywords. In CVS (and SVN) the keywords are > _stored_ in the repository in compressed form $KEYWORD$. They are only > expanded on checkout/update. On checkin, they are compressed to compact > form before deltas are created. Actually, in CVS the keywords are stored in the form they had in the file when the file was checked in. Confusingly, this means that revision 1.3 of the file (as stored in the CVS repository) usually has revision "1.2" listed in the expanded keywords. In Subversion, if keyword expansion is on for a file, then these keywords are indeed collapsed before being stored in the repository. So the first question is: what version of the keywords do you need in the files when you check them out of Mercurial? The version directly from the CVS repository, or the version that you would get by letting CVS expand the keywords while checking the file out of CVS? In practical terms, this question is probably equivalent to: are the lib files stored in CVS in binary mode or in text mode? I don't know about the state of cvs2hg, which is a fork of cvs2svn. But in the trunk version of cvs2svn proper, there is a (poorly-advertised) way to specify very exactly what content should be inserted into the target VCS. See the files doc/text-transformations.txt and doc/properties.txt (particularly the properties called "_keyword_handling" and "_eol_fix") in the cvs2svn source tree. If you want more help, we'll need more information. Michael -- Michael Haggerty [email protected] http://softwareswirl.blogspot.com/ ------------------------------------------------------ http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1670&dsMessageId=2839249 To unsubscribe from this discussion, e-mail: [[email protected]].