Wayne Davison <[EMAIL PROTECTED]> writes: > On Sat, May 31, 2003 at 01:04:40AM -0700, Harry Putnam wrote: >> I tested it on a real cvs checked out module and just as I suspected >> after rsyncing from the buffer directory where diff reports no >> differnces. Then try cvs commit. Cvs demands every file be >> commited. > > If you are syncing two cvs-checked-out areas, you must make sure NOT to > use the -C (--cvs-exclude) option or you won't update the files in the > CVS dir, and that will cause you problems.
No.. one is not a checked out module ... the source of rsync command is nearly a mirror but no CVS directories Wayne Davison <[EMAIL PROTECTED]> writes: > On Fri, May 30, 2003 at 08:02:11PM -0700, Harry Putnam wrote: >> Why are they being transferred? > > Undoubtedly because their timestamps are different. Only files that > have identical size and timestamp are considered to be identical in an > rsync transfer (unless you use -c). In the case of having identical > files with different timestamps, rsync will transfer just the checksum > data to determine that the files are indeed identical, and move into > place a file with an identical timestamp (which looks just like the > files are being transferred, but no actual file-data gets sent). But it seem cvs then sees them as modified. Not sure I see the point of any modification, time stamp or whatever if the files are the same. Further, I've blown one of my test apparently. I thought I saw the same behavior with --size-only flag set but trying now a few times I see --size-only does cure the problem. Maybe I'm going at this backward. Would it satisfy cvs if I followed this proceedure: Here /new/base.t is the checked out module ./cvs_buf.t is a near mirror but with no CVS directories. Revisions happen here and are then to be rsynced to the checked out module. rsync -navvzC --size-only ./cvs_buf.t/ /new/base.t Once this transfer is done and any changes in /cvs_buf.t are transferred to /new/base run cvs commit Now somehow transfer only timestamps from /new/base.t to ./cvs_buf.t I thought I remembered a flag for that purpose, but don't see it now in man rsync. Maybe I'm thinking of ftp or something. A further questions here: A section of man page gives a rough sketch of something a lot like what I want to do: To synchronize my samba source trees I use the following Makefile targets: get: rsync -avuzb --exclude '*~' samba:samba/ . put: rsync -Cavuzb . samba:samba/ sync: get put Do you know the details of how this works? What is meant by `Makefile targets'. and what is happening above. -- To unsubscribe or change options: http://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html