1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
.\" Copyright (c) 1997 Manoj Srivastava <srivasta@debian.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, write to the Free
.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
.\" USA.
.\"
.\" $Id: cvs-inject.1,v 1.3 1998/03/02 08:25:29 srivasta Exp $
.\"
.TH CVS\-INJECT 1 "Feb 20 1998" "Debian" "Debian GNU/Linux manual"
.SH NAME
cvs\-inject \- inject a debian source package into a CVS repository
.SH SYNOPSIS
.B cvs\-inject
.I [options]
.B <package>.dsc
.SH DESCRIPTION
This manual page explains the Debian
.B "cvs\-inject"
utility, which is used to inject or import Debian source packages into
a
.I CVS
repository. It handles Debian\-\-only packages (which do not have diff
files) as well as normal packages from
.I upstream
sources converted to Debian use.
.PP
The upstream sources are imported to the vendor branch and tagged
.I upstream_versions_<upstream version>
with all dots translated to under scores. The debianized sources, if
different, are put on the main branch, and tagged
.I debian_version_<upstream version>-<debian revision>
with all dots translated to under scores.
.PP
The sole argument is a debian source .dsc file, which is parsed to get
the package name and version.
.B cvs\-inject
reads the same config file
.I /etc/cvsdeb.conf
as the the other cvs-* utilities do.
People may use of the dry run option to inspect the steps this
utility takes.
.PP
Combined with the companion utilities
.B cvs\-buildpackage
and
.B cvs\-upgrade,
this provides an infrastructure to facilitate the use of
.B CVS
by Debian maintainers. This allows one to keep separate CVS branches
of a package for
.I stable,
.I unstable,
and possibly
.I experimental
distributions, along with the other benefits of a version control
system.
.PP
This utility can be used to generate a unified CVS source tree,
for example,
with
.PP
find /var/spool/mirror/debian/hamm/hamm/source \\
-type f -name \\*.dsc | while read i;
do
j=$(dirname $i | sed -e s:source/:: \\
-e s:/var/spool/mirror/debian/:: )
cvs-inject -x$j $i
done
.PP
Which happily gobbled up the sources and created a CVS repository
on my machine until the partition filled up.
.SH CAVEATS
Please not that the current behaviour of
.B cvs\-inject
is to ignore files that match the default list of file name patterns
to be ignored (this is built into cvs); and that any
.B .cvsignore
files in the upstream sources shall be honoured. This should be fine
as long as upstream sources do not include files that match cvs ignore
patterns and yet should be in the sources. The current list of ignored
file name patterns is:
.RS
.B RCS SCCS CVS CVS.adm RCSLOG cvslog.* tags TAGS .make.state
.B .nse_depinfo *~ #* .#* ,* _$* *$ *.old *.bak *.BAK *.orig *.rej .del-*
.B *.a *.olb *.o *.obj *.so *.exe *.Z *.elc *.ln core
.RE
.PP
.SH OPTIONS
.TP 20
.B \-h
Print out a usage message.
.TP
.BR \-M<module>
The name of the CVS module. This argument over rides the
settings in the environment variable
.B CVSDEB_MODULE.
There is no corresponding config file variable.
.TP
.BR \-x<prefix>
The name of the default CVS prefix. This argument over rides the
settings in the environment variable
.B CVSDEB_PREFIX,
which in turn over rides the setting in the configuration file,
.B conf_prefix.
.TP
.B \-R<root\ directory>
Root of the original sources archive. If the work directory is set
anywhere, (command line, configuration file, environment variable), the root
directory value is ignored, since we only need the root directory to
set defaults for the work directory. This argument over rides the
settings in the environment variable
.B CVSDEB_ROOTDIR,
and the configuration file variable
.B conf_rootdir.
.TP
.B \-W<work directory>
The working directory. This
argument over rides the settings in the environment variable
.B CVSDEB_WORKDIR,
and in the configuration file variable
.B conf_workdir..
.TP
.B \-d<number>
Turn on debugging output. This lists the version numbers, the work and
root directories, as well as the CVS tag used to export the
sources. This over\-rides the
.I DEBUG
variable in the configuration file.
.TP
.B \-n
The no exec (or dry-run) option, causing
.B cvs\-inject
to print out all actions that would be taken without actually
executing them..
.TP
.B \-v
Make the utility more verbose.
.TP
.SH FILES
Apart from the runtime options,
.B cvs\-inject
also looks for site\-wide defaults in the file
.I /etc/cvsdeb.conf.
After that, it looks for and reads
.I \~/.cvsdeb.conf
The default configuration allows there to be a site wide override for
the root or the working directories on the site, but the
.I cvsdeb.conf
files are actually Bourne shell snippets, and any legal shell directives
may be included in there.
.B Note:
Caution is urged with this file, since you can totally change the way
that the script behaves by suitable editing this file.
.SH "SEE ALSO"
.BR cvs-buildpackage (1),
.BR cvs-upgrade (1),
.BR cvsdeb.conf (5),
.BR cvs (1).
.SH AUTHOR
This manual page was written Manoj Srivastava <srivasta@debian.org>,
for the Debian GNU/Linux system.
|