Re: Timestamp fuzz on CVS commits?
Michael Haggerty <[email protected]>
| Newsgroups | gmane.comp.version-control.subversion.cvs2svn.user |
|---|---|
| Message-ID | <[email protected]> |
Greg Ward wrote: > I've been trying to figure out if and where cvs2svn applies a little > fuzz on CVS revision timestamps to merge chronologically adjacent file > revisions into changesets. That is, if > > cvs commit file1 file2 ... fileN > > takes 3 seconds to run, the resulting file revisions will span 3 sec, > but really should become 1 changeset. grep for config.COMMIT_THRESHOLD. You can also change that value. Please note that this is a constraint on the *gap* between commits, so as long as your CVS server manages to record each file-level commit within 5 minutes of the previous one, cvs2svn will try to group them into the same commit. Of course these protocommits are subject to further splitting during later stages in the conversion if necessary to break cycles in the dependency graph; this is described in doc/design-notes.txt. Big gaps within apparent changesets probably occur more often when the original CVS commit was interrupted after some of the file-level commits were done, then was restarted by the user. Or when the user forgot to include some changes in one commit, then made a followup commit with the same commit message. > I couldn't figure it out from the code... so 1) is a little fuzz > applied to the timestamps, and 2) if so, where? > > (Asking because I would like to increase the fuzz boundary a bit. I'm > seeing changesets in my output Mercurial repository with the same user > and commit message, but different files and different timestamps.) It might be that cvs2svn split the changesets for different reasons than the COMMIT_THRESHOLD. It is a bit of work to follow cvs2svn's commit-splitting decisions in great detail, but turning up the --verbosity level a couple of notches will provide much more detail. There is also code to emit the dependency graph in DOT format; see changeset_graph.output_(coarse|fine)_dot. But the dependency graphs will probably be impractically large for any real repository. Michael ------------------------------------------------------ http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1670&dsMessageId=2409250 To unsubscribe from this discussion, e-mail: [[email protected]].