On Fri, 11 Dec 2009 12:18:23 +0100, Zarko wrote:
Maybe because I never do changes in spec files directly in CVS
working directory but I copied them from my rpmbuild/SPEC dir to CVS working
dir....
The end-result is the same. You end up with modified files in your
cvs working-copy, which you need to commit to the cvs server. And
that's easy:
cvs diff -u | less
for a final look at what you've changed compared with what is found
in the cvs repository.
make clog
to extract the latest .spec %changelog comment into a file "clog",
which can be used as the cvs commit log message:
cvs commit -F clog
or
cvs commit -m "some alternative log message"
to commit the modifications found in all local files (with a proper
log message), and if that worked without errors,
make tag
to apply a cvs tag to all [comitted] files of the package.
If none of these steps caused an error, the new tag is ready to
be used by
make build
Room for mistakes is given when trying to shorten this sequence with the
help of macros/aliases and when not paying attention to cvs error messages.
For example, "make tag" will not tag all files as appropriate, if some of
the local changes have not been committed before.
[...]
For updates that require a new source tarball, there are two commands
which upload such source archives to the lookaside cache (a server that
doesn't store them in cvs) prior to modifying other files in cvs:
make new-sources FILES="fu-1.0.tar.gz bar-1.0.tar.gz"
to upload one or multiple files and store their file names in new local
"sources" and ".cvsignore" files. Or:
make upload FILES="fu-1.0.tar.gz bar-1.0.tar.gz"
to upload one or multiple files and append their file names to the local
"sources" and ".cvsignore" files. In either case, the changes in the
"sources" and ".cvsignore" files need to be committed to cvs just
like
ordinary changes made in the .spec file. The "cvs commit -F clog" above
also commits the changes found in those files.