bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug #29507] cvs update -j update timestamp of unchanged files


From: Mark D. Baushke
Subject: Re: [bug #29507] cvs update -j update timestamp of unchanged files
Date: Sat, 10 Apr 2010 00:23:49 -0700

Olexiy Buyanskyy <INVALID.NOREPLY@gnu.org> writes:

> Issue is really critical for our company. 

Criticality is subjective.

> We have 20000 C/C++ source files and have several central common
> libraries.

So, a relatively small project. Okay.

> Every patch goes on separate release branch that eventually is merging
> to HEAD (production) code. During merge we use
>
> cvs -q upd -kk -j tag_HEAD_start_point -j br_REL_BRANCH folder_name
> 
> During merge cvs apply properly patches to some files changed on
> release branch, but it also change timestamp of other files.

Well, it would only do that on any file which changes the -k option flag
in use... probably all of them.

> We use GNU make to compile our code and make uses timestamp. 

Lots of folks use some version of make to build their code. If the file
changes, it is good to force a recompile.

> Because cvs changed timestamp of all files this really triggers make
> to recompile sources those were not really changed.

First, it is only going to change the timestamp of files that are
updated.... However the -kk option will probably change them all unless
that is the normal situation you have in your checked out tree. There is
a real difference between having keywords expanded and not having them
expanded.

> So question why CVS change timestamp of all files. 

Because it is the correct thing to do in 99.99% of the cases.

I suggest you may find efficiencies in your build process by considering
the use of ccache (see http://ccache.samba.org/). If the CPP output of
the source files are the same, then ccache can give you a fair amount of
performance boot by not needing to do a full compile of the sources to
get the same .o files out of them... as likely happens if all of the CVS
keywords are in comments rather than in the source itself.

> Can this be fixed or new option introduced for merge process?

If you want to work on it, feel free to do so. You have the sources, go
ahead and use them to make any changes you feel may be useful to you.

Feel free to share any patches you produce if you wish.

        Enjoy!
        -- Mark

Attachment: pgpovFZwzQ72G.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]