[cvsnt] Re: Catch-all solution for changing -k modes?
Tony Hoyle
tmh at nodomain.org
Mon Dec 13 22:48:20 GMT 2004
Oliver Giesen wrote:
> Currently, after the Update -k you effectively have uncommitted changes
> in your sandbox. Yet, cvs status still reports the file as up-to-date
> (that's why the -f is required on commit after all) and if you don't
> commit right away for some reason it's quite easy to miss this. Could
> there maybe be some way to make this more transparent? E.g. changing
> the timestamp info in the Entries file to something like "Pending
> option change" when the cvs up -k is done?
Actually the -f requirement is for compatibility.... it's not uncommon
to do an update -k to export a sandbox without keywords for example...
if that sandbox is then committed it'd reset all the expansions - the -f
requirement means you can't do that accidentally (not sure if I
implemented it fully in 2.0.58... it was one of those things I thought
of much later).
Remember that on older CVS the admin -k option is destructive - any
revisions stored using the older expansion will now have the new one
(and may therefore be incorrect). CVSNT pre-2.0.58 has a slightly less
severe version of this problem in that you can only have a single
default -k option for every branch of the file. It's worth mentioning
this probably in the help for any option that wraps expansion changes.
> Furthermore, the commandline reference for cvs up -A reads "Reset any
> sticky tags/date/kopts.". Yet, this is obviously no longer true (not
> sure if it ever was). You cannot reset the k-option once you've done
> the cvs update -k . AFAICT the only way to undo that without knowing
> what the previous k-option was is releasing the folder and checking it
> out anew... or am I missing something?
It's probably never made much sense - it could do now (IMO up -A should
reset to the original expansion for that option) - it needs sorting out
one way or the other.
Tony
More information about the cvsnt
mailing list